ad7e800446
Tracking Attribute API Changes in ToT
james.brodman
2013-01-22 10:46:42 -05:00
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
Jean-Luc Duprat
2013-01-18 11:19:54 -08:00
9892c8bf9a
Fix logic for ordering of struct declarations in generated header files.
Matt Pharr
2012-12-06 11:39:22 -05:00
23e5877509
merge
Matt Pharr
2012-12-02 14:32:52 -08:00
8cbfde6092
Small fixes to build with LLVM top-of-tree (now numbered as version 3.3)
Matt Pharr
2012-12-02 14:29:24 -08:00
24087ff3cc
Expose none() in the ISPC standard library. On KNC: all(), any() and none() do not generate a redundant movmsk instruction.
Jean-Luc Duprat
2012-11-27 13:38:28 -08:00
16b0806d40
Fix LLVM TOT build issue.
Peng Tu
2012-11-21 19:09:10 -08:00
2129b1e27d
knc.h: Fixed __rsqrt_varying_float() to use _mm512_invsqrt_ps() instead of _mm512_invsqrt_pd() This was a typo.
Jean-Luc Duprat
2012-11-21 15:40:35 -08:00
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
Jean-Luc Duprat
2012-11-13 14:01:35 -08:00
32d44a5b9e
Merge branch 'master' of ssh://fmygit6001.fm.intel.com:29418/ssg_dpd_tpi_ispc-ispc_git
ptu1
2012-11-13 12:47:13 -08:00
810784da1f
Set the ScalarReplAggregate maximum structure size based on target vector width.
ptu1
2012-11-13 12:35:45 -08:00
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.
Peng Tu
2012-11-05 15:02:15 -08:00
9e85667219
Merge remote branch 'upstream/master'
Peng Tu
2012-10-29 22:51:22 -07:00
b80867d473
Move the call to RestoreContinuedLanes from bbBody to the correct place of bbCheckForMore for foreach_unique and foreach_active.
Peng Tu
2012-10-29 17:27:11 -07:00
538d51cbfe
Add GMRES example
Matt Pharr
2012-09-20 14:06:55 -07:00
3dd9ff3d84
knc.h: Properly pick up on ISPC_FORCE_ALIGNED_MEMORY when --opt=force-aligned-memory is used Fixed usage of loadunpack and packstore to use proper memory offset Fixed implementation of __masked_load_*() __masked_store_*() incorrectly (un)packing the lanes loaded Cleaned up usage of _mm512_undefined_*(), it is now mostly confined to constructor Minor cleanups
Jean-Luc Duprat
2012-09-19 17:11:04 -07:00
a13e7f2435
#define ISPC_FORCE_ALIGNED_MEMORY, if appropriate, in C++ output.
Matt Pharr
2012-09-14 13:53:12 -07:00
be2108260e
Add --opt=force-aligned-memory option.
Matt Pharr
2012-09-14 13:49:45 -07:00
59b0a2b208
Mark __any(), __all(), and __none() as internal after they're linked in.
Matt Pharr
2012-09-14 13:32:42 -07:00
05a5a42a08
Don't force loads/stores from varying types to be unaligned.
Matt Pharr
2012-09-14 12:17:25 -07:00
f0b0618484
Added the following mask tests: __any(), __all(), __none() for all supported targets. This allows for more efficient code generation of KNC.
Jean-Luc Duprat
2012-09-14 11:06:18 -07:00
4ecdbe4bd9
two changes: - exported structs now get protected with #ifdef/#define blocks (allows including multiple ispc-generated header fiels into the same c source - when creating offload stubs, encountering a 'export' function for which we cannot produce a stub will only trigger a warning, not an error.
Ingo Wald
2012-09-08 16:09:04 +02:00
9e9f266e52
Add files inadvertently missed in c58d92d46b.
Matt Pharr
2012-09-07 13:27:07 -07:00
0ce67f37ac
Use LLVM_VERSION env variable to get LLVM version with MSVC build.
Matt Pharr
2012-09-06 06:04:32 -07:00
ddcd0a49ec
Fix bugs with handling of 'continue' statements in foreach_* loops.
Matt Pharr
2012-09-05 10:16:58 -07:00
63b8fac852
Improve naming of temporary variable in IR
Matt Pharr
2012-09-05 10:13:45 -07:00
def8d7850b
Fix crasher with malformed programs
Matt Pharr
2012-08-28 15:03:45 -07:00