Commit Graph

1343 Commits

Author SHA1 Message Date
Dmitry Babokin
150d6d1f56 Adding Address Sanitizer build 2013-02-15 06:50:26 -08:00
jbrodman
d03e4ac100 Merge pull request #429 from dbabokin/master
Fix for #428
2013-02-11 11:10:32 -08:00
Dmitry Babokin
8d8d9c63fe Fix for #349: build issue when no git found 2013-02-11 11:01:46 -08:00
Dmitry Babokin
52147ce631 Fixing issue #428: need to specify LLVM libs explicitly 2013-02-11 04:15:50 -08:00
jbrodman
5af41df8a5 Merge pull request #427 from jbrodman/master
Clang ToT fixes.
2013-02-04 10:56:37 -08:00
james.brodman
775ecd6dfe Tracking ToT changes. Clang PP APIs changed. 2013-01-30 11:57:33 -05:00
jbrodman
b139235c62 Merge pull request #425 from jbrodman/master
Tracking Attribute API changes in ToT
2013-01-23 07:55:33 -08:00
james.brodman
8f2c910600 Tracking ToT changes to Attribute API 2013-01-23 10:57:05 -05:00
jbrodman
7e67f01d4b Merge pull request #424 from jbrodman/master
Tracking Attribute API changes in ToT
2013-01-22 07:45:20 -08:00
james.brodman
ad7e800446 Tracking Attribute API Changes in ToT 2013-01-22 10:46:42 -05:00
Jean-Luc Duprat
6326924de7 Fixes to the implementations of any() and none() in the stdlib.
These make sure that inactive vector lanes do not interfere with the results
2013-01-18 11:19:54 -08:00
jbrodman
801a3a6ff5 Merge pull request #423 from jbrodman/master
Properly size double/int64 initializers.
2013-01-18 08:56:48 -08:00
james.brodman
a4e94a26ba Tweak to not oversize short vec types for 64 bit values 2013-01-17 15:45:51 -05:00
jbrodman
44e6be7914 Merge pull request #422 from jbrodman/master
Fixes to build with ToT / M4 Macro Fix
2013-01-14 11:57:25 -08:00
james.brodman
3aaf2ef2d4 ToT Fixes / M4 macro fix 2013-01-14 14:55:10 -05:00
jbrodman
8f902fde9c Merge pull request #420 from jbrodman/master
Fix for c++ backend
v1.3.1
2013-01-08 11:55:03 -08:00
james.brodman
b6023c517e Fix/Hack to avoid the cbackend generating spurious array type declarations. 2013-01-08 14:53:17 -05:00
james.brodman
42d77e9191 Modified to mirror asin.ispc and not fail. 2013-01-08 14:33:32 -05:00
jbrodman
312a7582df Merge pull request #419 from jbrodman/master
Fix to acos.ispc test
2013-01-08 11:32:34 -08: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
jbrodman
f8bec51de2 Merge pull request #411 from pengtu/master
Simple fixes to allow SOA pointer and array be passed as function argument.
2013-01-08 08:40:01 -08:00
Matt Pharr
0bf1320a32 Remove support for building with LLVM 3.0 2013-01-06 12:27:53 -08:00
Matt Pharr
81dbd504aa Small fixes to eliminate compiler warnings when using clang 2013-01-06 12:10:54 -08:00
Matt Pharr
63dd7d9859 Fix build to work with LLVM top-of-tree again 2013-01-06 12:02:08 -08:00
Jean-Luc Duprat
2063d34f3e Merge pull request #414 from jbrodman/master
Fix to build with 3.2
2013-01-03 11:00:45 -08:00
james.brodman
83fdc2e5ad Fix to build with 3.2. LLVM API Change? 2013-01-03 13:43:47 -05: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
Jean-Luc Duprat
c2805942a9 Merge pull request #409 from mmp/master
Bugfix for issue #408.
2012-12-06 09:46:34 -08:00
Matt Pharr
9892c8bf9a Fix logic for ordering of struct declarations in generated header files.
When a struct had an array of another struct type as a member, we weren't
detecting that the struct type in the array needed to be declared before the
enclosing struct type.

Fixes issue #408.
2012-12-06 11:39:22 -05:00
Matt Pharr
23e5877509 merge 2012-12-02 14:32:52 -08:00
Matt Pharr
8cbfde6092 Small fixes to build with LLVM top-of-tree (now numbered as version 3.3) 2012-12-02 14:29:24 -08:00
Jean-Luc Duprat
24087ff3cc Expose none() in the ISPC standard library.
On KNC: all(), any() and none() do not generate a redundant movmsk instruction.
2012-11-27 13:38:28 -08:00
Jean-Luc Duprat
6827001c1d Merge pull request #406 from pengtu/master
Fix ISPC with LLVM TOT build problem
2012-11-22 09:27:10 -08:00
Peng Tu
16b0806d40 Fix LLVM TOT build issue. 2012-11-21 19:09:10 -08:00
Jean-Luc Duprat
2129b1e27d knc.h: Fixed __rsqrt_varying_float() to use _mm512_invsqrt_ps() instead of _mm512_invsqrt_pd()
This was a typo.
2012-11-21 15:40:35 -08:00
Jean-Luc Duprat
a267762f59 Merge pull request #404 from mmp/master
Fix build with LLVM top-of-tree
2012-11-21 10:37:40 -08:00
Jean-Luc Duprat
65ca795030 Merge pull request #405 from jbrodman/master
Tweaked Scalar Repl of Aggregates Optimization
2012-11-19 13:12:26 -08:00
Matt Pharr
e82b649ec0 Fix build with LLVM top-of-tree (various changes to clang entrypoints). 2012-11-16 11:04:11 -08:00
james.brodman
275cdb1713 Merge branch 'master' of https://github.com/ispc/ispc 2012-11-14 13:30:45 -05:00
Jean-Luc Duprat
d3b86dcc90 KNC: fix implementation of __all() to use KNCni mask test instructions... 2012-11-14 09:24:01 -08:00
james.brodman
c736b75075 Merge branch 'master' of https://github.com/ispc/ispc 2012-11-13 17:08:09 -05:00
Jean-Luc Duprat
b601331362 Approximation for inverse sqrt and reciprocal provided in fast math mode.
RCP was actually slow in fast math mode
   Inverse sqrt did not expose fast approximation
2012-11-13 14:01:35 -08:00
ptu1
32d44a5b9e Merge branch 'master' of ssh://fmygit6001.fm.intel.com:29418/ssg_dpd_tpi_ispc-ispc_git 2012-11-13 12:47:13 -08:00
ptu1
810784da1f Set the ScalarReplAggregate maximum structure size based on target vector width. 2012-11-13 12:35:45 -08:00
james.brodman
d517b37f3f Merge branch 'master' of https://github.com/ispc/ispc 2012-11-09 10:14:18 -05:00
Jean-Luc Duprat
adeef0af01 Merge pull request #403 from jbrodman/master
Fixed =/== error for KNC intrinsic implementation of __all()
2012-11-08 13:57:42 -08:00
james.brodman
97ddc1ed10 Fixed =/== error in __all() 2012-11-08 16:30:12 -05:00
james.brodman
bf580648a1 Merge branch 'master' of https://github.com/ispc/ispc 2012-11-06 12:03:27 -05:00
Jean-Luc Duprat
ecc54fa0eb Merge pull request #402 from pengtu/master
Fix a bug where an unsigned index variable in subscript is sxt to 64 bit
2012-11-05 21:51:38 -08:00
Peng Tu
04d32ae3e6 Inside LLVM, both signed and unsigned integer are represented with the same type - i32 - effectively a signed int32. On 64 bit target, we must generate explicit sxt/zxt during the LLVM IR creation to promote the array index into 64 bit. Otherwise, an unsigned int index becomes signed int index in the LLVM IR.
I limit the fix to uniformed index to avoid widening a varying index vector to 64 bits.  This means that the 32 bit values in the varying indices must be positive and smaller than 2^31 at the runtime for a program to behave correctly.
2012-11-05 15:02:15 -08:00