james.brodman
8db378b265
Revert "Remove support for using SVML for math lib routines."
...
This reverts commit d9c38b5c1f .
2013-09-04 16:01:58 -04:00
jbrodman
71a7564317
Merge pull request #574 from jbrodman/uniftypedef
...
Fix to respect uniform/varying qualifiers inside of typedefs.
2013-09-03 13:14:00 -07:00
jbrodman
c14b035a46
Merge pull request #572 from ifilippov/master
...
correction of adding -Werror option
2013-08-30 11:17:01 -07:00
jbrodman
cf2eaa0014
Merge pull request #569 from dbabokin/unmasked
...
Fix for incorrect implementation of reduce_[min|max]_[float|double]
2013-08-30 11:16:42 -07:00
jbrodman
cb92d54808
Merge pull request #570 from dbabokin/docs
...
Minor docs fixes.
2013-08-30 11:16:26 -07:00
james.brodman
97d430d5cd
Fix to respect uniform/varying qualifiers inside of typedefs.
2013-08-30 14:13:08 -04:00
Ilia Filippov
320b1700ff
correction of adding -Werror option
2013-08-30 16:01:01 +04:00
Dmitry Babokin
e06267ef1b
Fix for incorrect implementation of reduce_[min|max]_[float|double], it showed up as -O0
2013-08-29 16:16:02 +04:00
Dmitry Babokin
501a23ad20
Typos fixes in docs
2013-08-29 14:48:09 +04:00
Dmitry Babokin
c1cc80b1d5
Merge pull request #568 from jbrodman/master
...
Fix against LLVM ToT
2013-08-27 14:08:12 -07:00
james.brodman
28080b0c22
Fix build against 3.4
2013-08-27 16:56:00 -04:00
james.brodman
be3a40e70b
Fix for 3.4
2013-08-27 15:15:16 -04:00
Dmitry Babokin
5d8ebf3ca1
Fixing r183327-AVX2-GATHER.patch file permissions
2013-08-27 18:27:06 +04:00
Dmitry Babokin
443987f536
fixing ispc.rst file properties (should not be executable)
2013-08-27 15:33:44 +04:00
Dmitry Babokin
f6ce969d9f
Merge pull request #567 from ifilippov/master
...
Changes in perf.py functionality, unification of examples, correction build warnings
2013-08-26 03:26:28 -07:00
Ilia Filippov
f620cdbaa1
Changes in perf.py functionality, unification of examples, correction build warnings
2013-08-26 14:04:59 +04:00
Dmitry Babokin
3f2217646e
Merge pull request #562 from mmp/arm
...
New target naming scheme, new targets (SSE4-i8x16 and SSE4-i16x8), plus some cleanup and improvements.
2013-08-22 08:33:25 -07:00
Matt Pharr
611477e214
Revert change to lEmitVaryingSelect().
...
Using vector select versus a store and masked load for varying vector
selects seems to give worse code. This may be related to
http://llvm.org/bugs/show_bug.cgi?id=16941 .
2013-08-22 07:50:25 -07:00
Dmitry Babokin
9bb5c314cd
Merge pull request #565 from dbabokin/run_tests
...
run_tests.py fix and new switch.
2013-08-22 01:48:22 -07:00
Dmitry Babokin
f31a31478b
Moving time calculation earlier
2013-08-22 12:41:57 +04:00
Dmitry Babokin
5fb30939be
Fix for #564 , using wrong ispc in run_tests.py
2013-08-21 19:46:18 +04:00
Dmitry Babokin
60b413a9cb
Adding --non-interactive switch to run_tests.py
2013-08-21 19:25:30 +04:00
Matt Pharr
502f8fd76b
Reduce debug spew on failing idiv.ispc tests
2013-08-20 09:22:09 -07:00
Matt Pharr
2b2905b567
Fix (preexisting) bugs in generic-32/64.h with type of "__any", etc.
...
This should be a bool, not a one-wide vector of bools. The equivalent
fix was previously made in generic-16.h, but not made here. (Note that
many tests are still failing with these targets, but at least they
compile properly now.)
2013-08-20 09:05:50 -07:00
Matt Pharr
e7f067d70c
Fix handling of __clock() builtin for "generic" targets.
2013-08-20 09:04:52 -07:00
Matt Pharr
d976da7559
Speed up idiv test (dont test int32 as thoroughly)
2013-08-20 08:49:51 -07:00
Dmitry Babokin
84dbd66d10
Merge pull request #563 from jbrodman/debugopt
...
Separate -O and -g
2013-08-15 13:10:13 -07:00
james.brodman
6be3c24ee5
Separate -O and -g
2013-08-15 15:24:46 -04:00
Matt Pharr
42f31aed69
Another attempt at fixing the Windows build (added sse4-8/sse4-16 targets).
2013-08-14 11:02:45 -07:00
Matt Pharr
ed017c42f1
Fix ispc.vcxproj for Windows builds
2013-08-11 07:47:20 -07:00
Matt Pharr
4766467271
Revert ispc.vcxproj to version from top-of-tree.
2013-08-10 11:23:39 -07:00
Matt Pharr
ea8591a85a
Fix build with LLVM top-of-tree (link libcurses)
2013-08-10 11:22:43 -07:00
Matt Pharr
7ab4c5391c
Fix build with LLVM 3.2 and generic-4 / examples/sse4.h target.
2013-08-09 19:56:43 -07:00
Matt Pharr
0c5742b6f8
Implement new naming scheme for --target.
...
Now targets are named like "<isa>-i<mask size>x<gang size>", e.g.
"sse4-i8x16", or "avx2-i32x16".
The old target names are still supported.
2013-08-08 19:23:44 -07:00
Matt Pharr
1d76f74b16
Fix compiler warnings
2013-08-07 12:53:39 -07:00
Matt Pharr
5e5d42b918
Fix build with LLVM 3.1
2013-08-06 17:55:37 -07:00
Matt Pharr
cd9afe946c
Merge branch 'master' into arm
...
Conflicts:
Makefile
builtins.cpp
ispc.cpp
ispc.h
ispc.vcxproj
opt.cpp
2013-08-06 17:39:21 -07:00
Matt Pharr
1276ea9844
Revert "Remove support for building with LLVM 3.1"
...
This reverts commit d3c567503b .
Conflicts:
opt.cpp
2013-08-06 17:00:35 -07:00
jbrodman
0755e4f8ff
Merge pull request #561 from dbabokin/neon_condition
...
Fix for Windows build and making NEON target optional
2013-08-06 13:45:30 -07:00
Matt Pharr
ccdbddd388
Add peephole optimization to match int8/int16 averages.
...
Match the following patterns in IR, turning them into target-specific
intrinsics (e.g. PAVGB on x86) when possible.
(unsigned int8)(((unsigned int16)a + (unsigned int16)b + 1)/2)
(unsigned int8)(((unsigned int16)a + (unsigned int16)b)/2)
(unsigned int16)(((unsigned int32)a + (unsigned int32)b + 1)/2)
(unsigned int16)(((unsigned int32)a + (unsigned int32)b)/2)
(int8)(((int16)a + (int16)b + 1)/2)
(int8)(((int16)a + (int16)b)/2)
(int16)(((int32)a + (int32)b + 1)/2)
(int16)(((int32)a + (int32)b)/2)
2013-08-06 08:59:46 -07:00
Matt Pharr
5b20b06bd9
Add avg_{up,down}_int{8,16} routines to stdlib
...
These compute the average of two given values, rounding up and down,
respectively, if the result isn't exact. When possible, these are
mapped to target-specific intrinsics (PADD[BW] on IA and VH[R]ADD[US]
on NEON.)
A subsequent commit will add pattern-matching to generate calls to
these intrinsincs when the corresponding patterns are detected in the
IR.)
2013-08-06 08:41:12 -07:00
Dmitry Babokin
dff7735af9
Fix for Windows build and making NEON target optional
2013-08-02 19:24:34 -07:00
Dmitry Babokin
fb34fc5a85
Merge pull request #559 from ifilippov/debug_phases
...
Supporting dumping, switching off and debug printing of optimization phases.
2013-08-01 14:55:07 -07:00
Dmitry Babokin
43423c276f
Merge pull request #560 from ifilippov/perf
...
Supporting perf.py on Mac OS
2013-08-01 13:20:01 -07:00
jbrodman
5ffc3a8f4c
Merge pull request #558 from dbabokin/win_examples
...
Fix for examples to make them work on Windows properly
2013-08-01 08:02:42 -07:00
Ilia Filippov
3c06924a02
Supporting perf.py on Mac OS
2013-08-01 12:47:37 +04:00
Ilia Filippov
a174a90f86
Supporting dumping, switching off and debug printing of optimization phases
2013-08-01 11:37:52 +04:00
Matt Pharr
4f48d3258a
Documentation updates for NEON
2013-07-31 20:06:04 -07:00
Matt Pharr
d9c38b5c1f
Remove support for using SVML for math lib routines.
...
This path was poorly maintained and wasn't actually available on most
targets.
2013-07-31 06:56:48 -07:00
Matt Pharr
d3c567503b
Remove support for building with LLVM 3.1
2013-07-31 06:46:45 -07:00