a47cab4dfa
Replicates all needed state between expanded functions
...
commit 5e6f06cf59
Author: Aaron Gutierrez <gutierrez.aaron.m@gmail.com >
Date: Thu May 11 15:42:11 2017 -0400
Fixed issue with aliasing local variables
ISPC++ now produces valid code, or an appropriate error message, for all
of my test cases.
commit bfe723e1b7
Author: Aaron Gutierrez <gutierrez.aaron.m@gmail.com >
Date: Thu May 11 03:09:38 2017 -0400
Actually copy the AST.
Type replacement works except for function parameters.
commit f65b3e6300
Author: Aaron Gutierrez <gutierrez.aaron.m@gmail.com >
Date: Thu May 11 01:19:50 2017 -0400
[WIP] Remove cases for ForeachStmt and SymbolExpr
commit 2e28640860
Merge: 6a91c5d d020107
Author: Aaron Gutierrez <gutierrez.aaron.m@gmail.com >
Date: Wed May 10 23:13:40 2017 -0400
Merge branch 'master' into copy_ast
commit 6a91c5d5ac
Author: Aaron Gutierrez <gutierrez.aaron.m@gmail.com >
Date: Wed May 10 11:11:39 2017 -0400
Attempt to replicate AST when expanding polytypes
2017-05-11 15:43:29 -04:00
d020107d91
Typechecking fixes, moved some printing behind debug flag
2017-05-10 23:12:48 -04:00
192b99f21d
Translates polymorphic function to a single instance
2017-05-09 23:41:36 -04:00
aeb4c0b6f9
[WIP] replace polymorphic types from expressions
2017-05-09 01:46:36 -04:00
0f17514eb0
remove trailing whitespace
2017-05-08 17:45:17 -04:00
46ed9bdb3c
[WIP] Plumbing to expand polymorphic functions
2017-05-04 21:26:43 -04:00
0887760de1
[WIP] typechecking for casts to polymorphic types
2017-04-29 15:56:43 -04:00
Vsevolod Livinskiy
6ea03bb3af
Fix for struct with undound members
2016-02-06 17:08:17 +03:00
Vsevolod Livinskiy
243d6c2625
Fix cast from uniform struct to varying struct.
2016-02-05 08:32:35 +03:00
Andrey Shishpanov
22a0596fca
fixing trouble with casting from float reference to int, issue #1068
2015-07-22 00:22:25 +03:00
Anton Mitrokhin
9f083f99ac
classof implementations for all classes
2015-07-10 12:27:16 +03:00
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