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
Ilia Filippov
7ebea86a44
These changes fix problem with debug info in LLVM 3.4 with structs and enums.
...
The reason of problem is that ISPC generates debugInfo type of struct (or enum)
in the scope, where the variable of this type appears.
Ctx.cpp:1586
llvm::DIScope scope = GetDIScope();
llvm::DIType diType = sym->type->GetDIType(scope);
It is always Lexical_Block in some function. It is not right because type can
be declared global or in some function or in some namespace. Struct and enums
are failing because they don't reduce to atomic types. The "Big" fix is to save
declaration place in Type class. But now ISPC doesn't know about it,
for example this doesn't emit an error:
void function_1() { struct Foo {float x;}; uniform Foo myFoo;}
void function_2() { uniform Foo myFoo;}
So now all type declarations are global and we can simply change scope
parameter to the current file.
The "Big" fix will be after integration with clang.
2014-04-02 15:49:57 +04:00
Evghenii
fb581818c5
Merge branch 'master' into nvptx
2014-04-01 09:10:10 +02:00
jbrodman
2c0a6d7f69
Fix exported varying bug & backwards compatibility.
2014-03-24 00:01:37 -07: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
11f17ce0cd
Merge pull request #767 from jbrodman/nomosoa2
...
Fix bugs with exported varyings.
2014-03-14 09:00:36 +03:00
jbrodman
43db682c6d
Fix bugs with exported varyings.
2014-03-13 06:07:56 -07:00
Dmitry Babokin
8999a69546
Fix for off by one problem in debug info with LLVM 3.3+
2014-03-11 18:41:37 +04:00
Ilia Filippov
47f7900cd3
support LLVM trunk
2014-03-07 16:28:56 +04:00
Evghenii
63d3ac6679
Merge branch 'master' into nvptx
2014-01-20 13:47:24 +01:00
Evghenii
91d4ae46f6
sort --fails
2014-01-06 15:38:30 +01:00
Evghenii
546f9cb409
MAJOR CHANGE--- STOP WITH THIS BRANCH--
2014-01-06 13:51:02 +01:00
Evghenii
b2368e243c
+1
2014-01-06 08:15:50 +01:00
evghenii
c4c30a416a
fix function name mangling
2014-01-02 17:01:10 +01:00
james.brodman
b2f6043181
Merge branch 'master' into nomosoa
2013-12-30 13:25:51 -05:00
Dmitry Babokin
6d51987e67
Merge pull request #642 from egaburov/launch3d
...
concept of 3d tasking
2013-12-17 08:40:07 -08:00
james.brodman
01432670fd
Fix header file for multi-target output with pointers to varying in exported functions.
2013-12-12 13:27:23 -05:00
james.brodman
d10c0d9545
Add dynamic dispatch support for export functions with pointers to varying data as arguments
2013-12-05 17:47:58 -05:00
james.brodman
a448ccf20c
Merge branch 'master' into nomosoa
2013-12-04 13:52:44 -05:00
evghenii
bb46b561fd
Merged with upstream/master
2013-11-22 08:13:16 +01:00
Ilia Filippov
3fd9d5a025
support of LLVM 3.5
2013-11-21 19:09:43 +04:00
Evghenii
55bf0d23c2
resotred non-ptx functionality
2013-11-13 11:08:58 +01:00
Evghenii
dbb96c1885
need to fix launch code
2013-11-12 13:41:03 +01:00
Evghenii
4cd7e10ad3
reversed to original changes. Here is the plan to use CDP and genarate only device code with host wrapper..
2013-11-12 12:51:56 +01:00
Evghenii
dcf9c280ee
some cleaning
2013-10-31 16:05:06 +01:00
Evghenii
63917f8cc2
now generates CUDALaunch call. Few tweaks are still necesary
2013-10-31 16:01:34 +01:00
Evghenii
f9ec1a0097
.. work in programm to embed PTX into host code ..
2013-10-30 16:47:30 +01:00
Evghenii
f15cdc03e3
nvptx64 generates 2 targets: task and normal function for nvptx64 and export for avx only
2013-10-29 14:46:51 +01:00
Evghenii
1bd5360d3b
added now NVPTX64 automatically emits unmasked extern "C" for task function with kernel attributes
2013-10-28 13:58:01 +01:00
Evghenii
a7aa1ac1cf
now nvptx allows extern "C" task void, which is emits a kernel that should (?) be callable by driver API from external code
2013-10-28 12:57:09 +01:00
Evghenii
b68a751f4e
generating proper tasking function for nvptx
2013-10-28 11:36:08 +01:00
Evghenii
383e804ec1
changed notation form taskIndex1,2,3 -> taskIndex0,1,2
2013-10-24 17:20:56 +02:00
Evghenii
43761173ec
changed notation, task[Index,Count]_[x,y,z] -> task[Index,Count][1,2,3]. Change launch <<< nx,ny,nz >>> into launch [nx,ny,nz] or equivalent launch [nz][ny][nx]. Programmer can pick the one the is liked the most
2013-10-24 13:16:23 +02:00
egaburov
78a05777bc
added taskIndex_x,y,z and taskCount_x,y,z
2013-10-22 16:18:40 +02:00
james.brodman
ecb1174a18
leaving myself notes for later
2013-09-27 14:23:04 -04:00
james.brodman
090dec8549
Output regular header for multiple targets + fix exported varying types.
2013-08-22 13:23:22 -04:00
JCB
3e9d784013
Support exported arrays of varyings
2013-08-20 16:14:29 -04:00
JCB
10b8c481f5
initial support for exported varying
2013-08-20 15:14:15 -04: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
Ilia Filippov
560acd5017
changes to support createFunction() with DICompositeType argument in LLVM_3_4
2013-06-04 15:48:39 +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
Dmitry Babokin
51fdff208e
Tracking ToT changes in DIBuilder interface
2013-02-25 14:50:33 +04:00
jbrodman
dc939eba78
Merge pull request #418 from mmp/master
...
Fix build with LLVM top-of-tree, fix warnings, remove LLVM 3.0 support
2013-01-08 10:28:02 -08:00
Matt Pharr
0bf1320a32
Remove support for building with LLVM 3.0
2013-01-06 12:27:53 -08:00
Matt Pharr
63dd7d9859
Fix build to work with LLVM top-of-tree again
2013-01-06 12:02:08 -08:00
Peng Tu
6ba7368ab0
Fix two compile time errors to allow SOA pointer and array be passed as function argument.
2012-12-11 17:20:15 -08:00