james.brodman
a18b3ae88e
Merge branch 'master' of https://github.com/ispc/ispc
2012-10-31 15:25:41 -04:00
james.brodman
e57801a5d1
Typo Fix
2012-10-31 15:25:26 -04:00
ingowald
da4390aede
Merge pull request #401 from pengtu/master
...
Fix a "continue" handling bug in foreach_unique/foreach_active
2012-10-30 01:46:01 -07:00
Peng Tu
b80867d473
Move the call to RestoreContinuedLanes from bbBody to the correct place of bbCheckForMore for foreach_unique and foreach_active.
2012-10-29 17:27:11 -07:00
Jean-Luc Duprat
d742dcce59
Merge pull request #400 from jbrodman/master
...
Fixes a compile error in examples/intrinsics/sse4.h. Assignment was used instead of equality comparison.
2012-10-26 14:08:56 -07:00
james.brodman
7a7af3d5f9
Merge branch 'master' of https://github.com/jbrodman/ispc
2012-10-26 16:55:53 -04:00
jbrodman
e323b1d0ad
Fixed compile error: == instead of =
2012-10-26 16:55:28 -04:00
james.brodman
3c18c7a713
Fixed compile error: == instead of =
2012-10-26 16:52:54 -04:00
james.brodman
7c16292cb7
Merge branch 'master' of https://github.com/ispc/ispc
2012-10-24 13:49:04 -04:00
Gerrit Code Review
d665e2e85b
Initial empty repository
2012-10-24 09:53:29 -07:00
Matt Pharr
172a189c6f
Fix build with LLVM top-of-tree
2012-10-17 11:11:50 -07:00
Matt Pharr
406fbab40e
Fix bugs in declarations of __any, __all, and __none in examples/intrinsics.
...
They return bool, not vector of bool.
2012-10-17 10:55:50 -07:00
Matt Pharr
09dc217f8c
Fix hex constant in lParseInteger() (missing an f)
2012-10-16 06:03:33 -07:00
Matt Pharr
9002837750
Remove incorrect assert in tasksys.cpp
2012-10-15 10:43:46 -07:00
Matt Pharr
411d5b44ef
Add ISPC_HAS_RAND definition on targets that have a HW RNG.
...
This lets us check for a functioning rdrand() call in the stdlib
more reliably. Fixes issue #333 .
2012-10-03 09:18:12 -07:00
Matt Pharr
360cc8044e
Improve RNG documentation.
...
Issue #390 .
2012-10-03 08:33:43 -07:00
Matt Pharr
ec2e9b5e79
Fix typo in assert() documentation.
...
Issue #388 .
2012-10-03 08:26:38 -07:00
Matt Pharr
881dba61e4
Fix build with LLVM top-of-tree
2012-09-28 06:07:01 -07:00
Matt Pharr
6412876f64
Remove unused __reduce_add_uint{32,64} target functions.
...
The stdilb code just calls the signed int{32,64} functions,
which gives the right result for the unsigned case anyway.
The various targets didn't consistently define the unsigned
variants in any case.
2012-09-28 05:55:41 -07:00
Matt Pharr
538d51cbfe
Add GMRES example
2012-09-20 14:06:55 -07:00
Jean-Luc Duprat
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
knc2x.h
Fixed usage of loadunpack and packstore to use proper memory offset
Fixed implementation of __masked_load_*() __masked_store_*() incorrectly (un)packing the lanes loaded
Properly pick up on ISPC_FORCE_ALIGNED_MEMORY when --opt=force-aligned-memory is used
__any() and __none() speedups.
Cleaned up usage of _mm512_undefined_*(), it is now mostly confined to constructor
2012-09-19 17:11:04 -07:00
Ingo Wald
7f386923b0
Merge branch 'master' of https://github.com/ispc/ispc
2012-09-17 15:54:25 +02:00
Ingo Wald
d2312b1fbd
now using the ASSUME_ALIGNED flag in knc.h
2012-09-17 15:54:00 +02:00
Ingo Wald
6655373ac3
commit test
2012-09-17 15:51:37 +02:00
Ingo Wald
d492af7bc0
64-bit gather/scatter, aligned load/store, i8 support
2012-09-17 03:39:02 +02:00
Matt Pharr
230a7b7374
Fix bug with floating-point constant zero vectors.
...
Issue #377 .
2012-09-14 14:24:51 -07:00
Jean-Luc Duprat
4204a752f7
Merge branch 'master' of https://github.com/ispc/ispc
2012-09-14 14:12:49 -07:00
Jean-Luc Duprat
0e88d5f97f
Fixed unaligned masked stores on KNC
2012-09-14 14:11:41 -07:00
Matt Pharr
a13e7f2435
#define ISPC_FORCE_ALIGNED_MEMORY, if appropriate, in C++ output.
2012-09-14 13:53:12 -07:00
Matt Pharr
be2108260e
Add --opt=force-aligned-memory option.
...
This forces all vector loads/stores to be done assuming that the given
pointer is aligned to the vector size, thus allowing the use of sometimes
more-efficient instructions. (If it isn't the case that the memory is
aligned, the program will fail!).
2012-09-14 13:49:45 -07:00
Matt Pharr
59b0a2b208
Mark __any(), __all(), and __none() as internal after they're linked in.
...
This fixes multiple symbol definition errors when compiling a single binary
for multiple ISA targets.
2012-09-14 13:32:42 -07:00
Matt Pharr
05a5a42a08
Don't force loads/stores from varying types to be unaligned.
...
These should always actually be aligned in memory.
2012-09-14 12:17:33 -07:00
Jean-Luc Duprat
f0b0618484
Added the following mask tests: __any(), __all(), __none() for all supported targets.
...
This allows for more efficient code generation of KNC.
2012-09-14 11:06:18 -07:00
Ingo Wald
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.
2012-09-08 16:09:04 +02:00
Matt Pharr
9e9f266e52
Add files inadvertently missed in c58d92d46b.
...
Truly fixes issue #363 .
2012-09-07 13:27:07 -07:00
Matt Pharr
0ce67f37ac
Use LLVM_VERSION env variable to get LLVM version with MSVC build.
...
Previously, it was set directly in the ispc.vcxproj file.
Issue #371 .
2012-09-06 06:04:32 -07:00
Matt Pharr
ddcd0a49ec
Fix bugs with handling of 'continue' statements in foreach_* loops.
2012-09-05 10:16:58 -07:00
Matt Pharr
63b8fac852
Improve naming of temporary variable in IR
2012-09-05 10:13:45 -07:00
Matt Pharr
def8d7850b
Fix crasher with malformed programs
2012-09-05 08:43:46 -07:00
Jean-Luc Duprat
0442efc856
Merge branch 'master' of https://github.com/ispc/ispc
2012-09-04 11:00:03 -07:00
Jean-Luc Duprat
f928bbb53c
Updated usage of Initial Many Core Instructions (Intel® IMCI) instructions.
2012-09-04 10:57:25 -07:00
Jean-Luc Duprat
1ab7500dbb
Updated user's guide to comply with Intel® Xeon Phi™ brand usage guidelines
2012-09-04 10:53:01 -07:00
Matt Pharr
c58d92d46b
Issue error if a vector-typed parameter is used in an exported function.
...
Issue #363 .
2012-08-31 06:59:58 -07:00
Matt Pharr
8276e912fd
Switch to LLVM 3.1 for default for MSVC builds. Also fixes issue #374
2012-08-31 05:58:39 -07:00
Jean-Luc Duprat
e0490d0df5
Minor fixes needed for building on windows.
2012-08-30 10:56:13 -07:00
Jean-Luc Duprat
11db466a88
Implement the KNC prefetch API so that ISPC prefetch_*() stdlib functions may be used.
2012-08-30 10:24:31 -07:00
Matt Pharr
caaee0b666
Fix crash when using launch with non-task-qualified function
2012-08-29 09:06:47 -07:00
Matt Pharr
f2f470f369
Merge pull request #369 from jduprat/master
...
Task system updates
2012-08-28 14:01:37 -07:00
Jean-Luc Duprat
09bb36f58c
Updated the task system in the example directory to support:
...
Cilk (cilk_for), OpenMP (#pragma omp parallel for), TBB(tbb::task_group and tbb::parallel_for)
as well as a new pthreads-based model that fully subscribes the machine (good for KNC).
With major contributions from Ingo Wald and James Brodman.
2012-08-28 11:13:12 -07:00
Matt Pharr
21719df6fd
remove assert that hit with fast-math if user defined their own functions named rcp()
2012-08-21 16:39:36 -07:00