Anton Mitrokhin
26a93bc733
Id's fo Expr-inherited classes
2015-07-09 12:38:58 +03:00
Dmitry Babokin
bf4ca847a5
Merge pull request #1057 from ncos/ispc-versions
...
New LLVM version macro
2015-06-17 17:50:36 +03:00
Anton Mitrokhin
ebc47d00a1
remove several redundant #if - clauses
2015-06-17 17:40:02 +03:00
Anton Mitrokhin
0afa3f5713
New LLVM version macro
2015-06-17 10:14:28 +03:00
Andrey Guskov
73dc899ff1
Fixed MAXINT array size limitation
2015-06-06 01:16:56 +03:00
jbrodman
c8e492d82f
Ptr Diff should ignore const
2015-04-29 18:30:21 -04:00
Dmitry Babokin
da83196996
Adding missing AddressOfExpr::GetLValueType()
2014-12-30 18:11:39 +03:00
evghenii
8745888ce9
merged with master
2014-08-11 10:04:54 +02:00
Anton Mitrokhin
60fa76ccc1
reversed macros LLVM_3_6 to LLVM_3_5+ in .cpp and .h files
2014-08-01 15:40:48 +04:00
Anton Mitrokhin
d0c9b7c9b5
wiped out all LLVM 3.1 support
2014-08-01 14:54:08 +04:00
Anton Mitrokhin
725be222ac
added LLVM_3_6 var
2014-07-30 11:50:15 +04:00
evghenii
b3c5a9c4d6
added #ifdef ISPC_NVPTX_ENALED ... #endif guards
2014-07-09 12:32:18 +02:00
evghenii
69f3898a61
Merge branch 'master' into nvptx_merge
2014-07-07 16:30:12 +02:00
jbrodman
d3144da5eb
Add error messages for structs containing nested undefined structs
2014-05-27 15:50:53 -07:00
Evghenii
fb581818c5
Merge branch 'master' into nvptx
2014-04-01 09:10:10 +02:00
Ilia Filippov
ecdc695b22
Changing overload rules to match C++ behavior: Emit a warning when the best overload match has some number of no-best matching parameters.
2014-03-25 12:41:09 +04:00
Ilia Filippov
6f44d5b55f
correction of overload issues
2014-03-24 15:47:21 +04:00
Evghenii
4641a15287
Merge branch 'master' into nvptx
2014-03-19 10:53:07 +01:00
Ilia Filippov
02d55f24f6
adding const to Atomic::Void type
2014-03-17 14:42:55 +04:00
Dmitry Babokin
31b95b665b
Copyright update
2014-03-12 20:19:16 +04:00
Ilia Filippov
9ab8f4e10e
support LLVM trunk after 202814-202842 revisions
2014-03-05 10:12:30 +04:00
Ilia Filippov
c4e35050b0
support of building with C++11
2014-03-04 16:01:18 +04:00
Evghenii
4196c723eb
merged with nvptx
2014-02-20 11:01:58 +01:00
jbrodman
720975dff4
Disallow initializing void * with ptr to const.
2014-02-04 03:36:19 -08:00
Evghenii
6bf2ad27d1
merge with master
2014-02-01 11:53:57 +01:00
jbrodman
00aeef9f1b
Allow casting reference types like pointers. See Issue #721 .
2014-01-24 03:37:27 -08:00
Evghenii
5a8351d7ea
added varying new/delete
2014-01-24 09:22:55 +01:00
Evghenii
e734bbc0cc
added new Errors
2014-01-23 13:11:02 +01:00
Dmitry Babokin
6d51987e67
Merge pull request #642 from egaburov/launch3d
...
concept of 3d tasking
2013-12-17 08:40:07 -08:00
Evghenii
63ecf009ec
fix compilation for Visual Studio
2013-12-17 15:06:29 +01:00
james.brodman
9ce6fbe1fa
Support using pointer arithmetic as lvalue
2013-10-30 17:07:26 -04:00
Ilia Filippov
621679245a
fixing problem 644
2013-10-25 22:44:37 +04:00
egaburov
f89bad1e94
launch now passes the right info into tasking
2013-10-23 12:51:06 +02:00
Ilia Filippov
2e724b095e
support of operators
2013-10-18 13:45:15 +04: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
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
Matt Pharr
d3c567503b
Remove support for building with LLVM 3.1
2013-07-31 06:46:45 -07:00
Matt Pharr
04d61afa23
Fix bug in lEmitVaryingSelect() for targets with i1 mask types.
...
Commit 53414f12e6 introduced a but where lEmitVaryingSelect() would
try to truncate a vector of i1s to a vector of i1s, which in turn
made LLVM's IR analyzer unhappy.
2013-07-25 09:45:20 -07:00
Matt Pharr
53414f12e6
Add SSE4 target optimized for computation with 8-bit datatypes.
...
This change adds a new 'sse4-8' target, where programCount is 16 and
the mask element size is 8-bits. (i.e. the most appropriate sizing of
the mask for SIMD computation with 8-bit datatypes.)
2013-07-23 17:30:32 -07:00
Matt Pharr
e7abf3f2ea
Add support for mask vectors of 8 and 16-bit element types.
...
There were a number of places throughout the system that assumed that the
execution mask would only have either 32-bit or 1-bit elements. This
commit makes it possible to have a target with an 8- or 16-bit mask.
2013-07-23 16:50:11 -07:00
Matt Pharr
83e1630fbc
Add support for fast division of varying int values by small constants.
...
For varying int8/16/32 types, divides by small constants can be
implemented efficiently through multiplies and shifts with integer
types of twice the bit-width; this commit adds this optimization.
(Implementation is based on Halide.)
2013-07-23 16:49:56 -07:00
Matt Pharr
0277ba1aaa
Improve warnings for right shift by varying amounts.
...
Fixes:
- Don't issue a warning when the shift is a by the same amount in all
vector lanes.
- Do issue a warning when it's a compile-time constant but the values
are different in different lanes.
Previously, we warned iff the shift amount wasn't a compile-time constant.
2013-07-23 16:49:07 -07:00
Matt Pharr
564e61c828
Improvements to constant folding.
...
We can now do constant folding with all basic datatypes (the previous
implementation handled int32 well, but had limited, if any, coverage
for other datatypes.)
Reduced a bit of repeated code in the constant folding implementation
through template helper functions.
2013-07-22 16:12:02 -07:00
Dmitry Babokin
27daab2f1b
Fix for #520
2013-06-18 22:15:49 +04:00
james.brodman
9f44e597d6
Additional Not -> Xor w/ MaskAllOn
2013-05-15 18:15:41 -04:00
james.brodman
5af2f80bc5
Fix for cases where valid lvalues were not being computed.
2013-05-03 12:12:42 -04:00
Dmitry Babokin
95950885cf
Use posix_memalign to allocate 16 byte alligned memeory on Linux/MacOS.
2013-04-26 20:33:24 +04:00
Dmitry Babokin
4c35d9456a
Additional cleanup to enable more broadcasts
2013-04-10 15:34:21 +04:00
Dmitry Babokin
0f86255279
Target class redesign: data moved to private. Also empty target-feature attribute is not added anymore (generic targets).
2013-03-23 14:28:05 +04:00
Dmitry Babokin
3f8a678c5a
Editorial change: fixing trailing white spaces and tabs
2013-03-18 16:17:55 +04:00