137ea7bde6
Rename semaphore filename to be more generic
Matt Pharr
2011-08-04 05:28:00 -07:00
e05b3981d9
Add stencil example
Matt Pharr
2011-08-03 13:49:02 -07:00
a5a133ccce
Do more iterations of RNG test to let result converge to bounds.
Matt Pharr
2011-08-03 13:44:49 -07:00
0ac4f7b620
Add various prefetch functions to the standard library.
Matt Pharr
2011-08-03 12:07:30 -07:00
467f1e71d7
Add fast versions of the float<-->half conversion routines in the stdlib.
Matt Pharr
2011-08-03 15:58:42 +01:00
a2996ed5d9
More efficient implementation of frandom() in stdlib
Matt Pharr
2011-08-03 14:28:06 +01:00
7d7dd2b204
Merge branch 'master' of github.com:ispc/ispc
Matt Pharr
2011-08-01 12:16:33 +01:00
172794ba5f
Release notes and doxygen update for 1.0.5 release
v1.0.5
Matt Pharr
2011-08-01 12:15:42 +01:00
9ee6f86c73
Fix Windows build of ispc_test
Matt Pharr
2011-08-01 04:05:37 -07:00
a4bb6b5520
Add new example with implementation of Perlin Noise
Matt Pharr
2011-08-01 10:33:18 +01:00
a552927a6a
Cleanup implementation of target builtins code.
Matt Pharr
2011-08-01 05:58:43 +01:00
2d52c732f1
Doc updates for recent new swizzle support
Matt Pharr
2011-07-31 19:03:55 +02:00
25676d5643
When --debug is specified, only print the entire module bitcode twice.
Matt Pharr
2011-07-29 07:26:37 +02:00
158bd6ef9e
Fix bug with initializer expression lists for globlal/static array-typed variables.
Matt Pharr
2011-07-28 11:38:56 +01:00
7f662de6e3
Emit debug declaration of variables before the instructions for their initializers.
Matt Pharr
2011-07-28 11:05:02 +01:00
80ca02af58
Add missing #include, fix Linux build. Fixes issue #75.
Matt Pharr
2011-07-27 10:51:13 +01:00
8aea4a836d
Fix crash when trying to generate debug info with program source from stdin
Matt Pharr
2011-07-27 07:42:47 +01:00
922dbdec06
Fixes to build with LLVM top-of-tree
Matt Pharr
2011-07-26 10:57:49 +01:00
e230d2c9ca
Make the target argument work in the run_tests.sh script
Matt Pharr
2011-07-26 10:57:39 +01:00
d0674b1706
When doing << or >> operators, don't convert the return type to the type of the shift amount.
Matt Pharr
2011-07-25 23:36:05 +01:00
16be1d313e
AVX updates / improvements.
Matt Pharr
2011-07-25 07:41:37 +01:00
0932dcd98b
Fix build with llvm top-of-tree
Matt Pharr
2011-07-23 08:35:45 +01:00
43a619669f
Fix memory bug where we were accessing memory that had been freed.
Matt Pharr
2011-07-22 13:15:50 +01:00
59036cdf5b
Add support for multi-element vector swizzles. Issue #17.
Pete Couperus
2011-07-22 13:10:14 +01:00
98a2d69e72
Add code to check signatures of LLVM intrinsic declarations in stdlib*.ll files.
Matt Pharr
2011-07-22 12:53:17 +01:00
da0fd93315
AVX fixes: add missing 8/16-bit gathers and scatters, set features string appropriately when AVX is enabled.
Matt Pharr
2011-07-22 12:36:44 +01:00
165f90357f
Tiny cleanups, doc update re int8/16 performance
Matt Pharr
2011-07-21 16:04:16 +01:00
8ef3df57c5
Add support for in-memory half float data. Fixes issue #10
Matt Pharr
2011-07-21 15:55:45 +01:00
96d40327d0
Fix issue #72: 64 gathers/scatters led to undefined symbols
Matt Pharr
2011-07-21 14:44:55 +01:00
bba7211654
Add support for int8/int16 types. Addresses issues #9 and #42.
Matt Pharr
2011-07-21 06:57:40 +01:00
2d573acd17
Another LLVM dev tree API change fix
Matt Pharr
2011-07-18 17:28:49 +01:00
654cfb4b4b
Many fixes for recent LLVM dev tree API changes
Matt Pharr
2011-07-18 15:54:39 +01:00
65a29ec316
Only create ispc-callable functions for bitcode functions that start with "__"
v1.0.4
Matt Pharr
2011-07-18 13:03:50 +01:00
6b0a6c0124
Fix issue #67: don't crash ungracefully if target ISA not supported on system.
Matt Pharr
2011-07-18 12:29:43 +01:00
213c3a9666
Release notes, bump doxygen version # for next release. Add more .gitignore stuff.
Matt Pharr
2011-07-17 16:52:36 +02:00
f0f876c3ec
Add support for enums.
Matt Pharr
2011-07-17 16:43:05 +02:00
17e5c8b7c2
Fix LLVM 2.9 build.
Matt Pharr
2011-07-13 09:24:02 +01:00
646db5aacb
Reflect changes in LLVM's type system.
Andreas Wendleder
2011-07-12 21:21:57 +02:00
a535aa586b
Fix issue #2: use zero extend to convert bool->int, not sign extend.
Matt Pharr
2011-07-12 13:30:05 +01:00
6e8af5038b
Fix issue #62: emit stdlib code as char array, not a string
Matt Pharr
2011-07-08 09:14:52 -07:00
7058ca1aaf
Script fixes.
Andreas Wendleder
2011-07-08 17:01:28 +02:00
ae6ee3ea46
Cmake based LLVM builds don't have svn in their identification.
Andreas Wendleder
2011-07-08 16:59:58 +02:00
e156651190
Fix __load_masked_{32,64} to properly obey the mask. Fixes issue #28.
Matt Pharr
2011-07-08 11:21:11 +01:00
092d288aef
Merge pull request #61 from danschubert/master
Matt Pharr
2011-07-07 08:45:40 -07:00
409bdc0dba
Fixed VC2010 warnings:
Daniel Schubert
2011-07-07 08:17:03 -07:00
aef8c09019
Add support for atomic swap/cmpexchg with float and double types.
Matt Pharr
2011-07-07 14:07:52 +01:00
729f522a01
Fix bug in double-precision version of ldexp() in stdlib.
Matt Pharr
2011-07-07 13:57:20 +01:00
96ad2265e7
Merge pull request #59 from danschubert/patch-1
Matt Pharr
2011-07-07 05:27:24 -07:00
5a53a43ed0
Finish support for 64-bit types in stdlib. Fixes issue #14.
Matt Pharr
2011-07-07 13:25:55 +01:00
f1aaf0115e
Fix a number of cases in the parser where segfaults were possible with malformed programs.
Matt Pharr
2011-07-07 12:26:11 +01:00
6b5ee6ccc0
Add missing "$$=NULL;" in error production in parser.
Matt Pharr
2011-07-07 11:10:27 +01:00
a1d5ea69b9
Support 64-bit integer constants in parser. Partial fix to issue #21.
Matt Pharr
2011-07-06 16:54:14 +01:00
af70718eca
Always include the passed arg types when printing errors about function overload resolution failing.
Matt Pharr
2011-07-06 15:33:50 +01:00
8e5ea9c33c
Set up NULL values for default arguments when creating ispc functions from LLVM bitcode builtins.
Matt Pharr
2011-07-06 15:33:26 +01:00
6e4c165c7e
Use malloc to allocate storage for task parameters on Windows.
Matt Pharr
2011-07-06 05:53:25 -07:00
4d733af3c7
Add check to make sure file exists before running preprocessor.
Matt Pharr
2011-07-06 11:33:33 +01:00
b8dae5cb9a
Fix GetDirectoryAndFileName() on Windows.
Matt Pharr
2011-07-06 03:23:25 -07:00
6ea213ad5d
Added a few error productions to the parser.
Matt Pharr
2011-07-06 09:32:14 +01:00
126e065601
Merge from petecoup/shortvec-in-struct branch.
Pete Couperus
2011-07-06 09:07:51 +01:00
5cc750ecee
Add comment re popcnt on SSE2 target.
Matt Pharr
2011-07-06 07:37:35 +01:00
92106e866e
Fix typos in documentation.
Matt Pharr
2011-07-06 07:37:20 +01:00
6d3e44ead7
Add missing 'internal' qualifiers to two atomic function implementations.
Matt Pharr
2011-07-06 07:20:46 +01:00
f0d254b941
Bump release number in doxygen.cfg
v1.0.3
Matt Pharr
2011-07-04 17:27:01 +01:00
5bcc611409
Implement global atomics and a memory barrier in the standard library.
Matt Pharr
2011-07-04 17:20:42 +01:00
24f47b300d
Merge branch 'master' of github.com:ispc/ispc
Matt Pharr
2011-07-04 15:49:16 +01:00
5c810e620d
Improvements to the routine that maps from LLVM types to ispc types.
Matt Pharr
2011-07-04 15:49:04 +01:00
c6bc8fd64f
Type conversion and function call overload resolution bug fixes.
Matt Pharr
2011-07-04 15:11:28 +01:00
3b3015162f
Documentation updates for new preprocessor support.
Matt Pharr
2011-07-04 14:55:55 +01:00
46ccc251c8
Added C preprocessor support for Windows.
Matt Pharr
2011-07-04 05:01:04 -07:00
b0658549c5
Fix crash when no input filename was provided.
Matt Pharr
2011-07-04 12:52:03 +01:00
c14c3ceba6
Provide both signed and unsigned int variants of bitcode-based builtins.
Matt Pharr
2011-07-04 12:07:00 +01:00
fac50ba454
Use clang's preprocessor, rather than forking a process to run cpp on Mac/Linux (and not having a built-in preprocessor solution at all on Windows.) Fixes issue #32.
Pete Couperus
2011-07-04 08:35:31 +01:00
fe7717ab67
Added shuffle() variant to the standard library that takes two varying values and a permutation index that spans the concatenation of the two of them (along the lines of SHUFPS...)
Matt Pharr
2011-07-02 08:39:19 +01:00
a9540b7c18
Update implementations of masked load/store builtins for AVX to actually use the AVX intrinsics that do this. (As always, not yet tested, pending fuller LLVM AVX support.)
Matt Pharr
2011-07-01 16:27:49 +01:00
28625eb1df
Disable ability to specify AVX target on command line (pending things coming more online in LLVM's AVX codebase.)
Matt Pharr
2011-07-01 16:25:22 +01:00
c6bbfe8b54
Many fixes to AVX builtins implementations. (Found by inspection, still not working pending further LLVM support for AVX.) - Call SSE versions for all the various scalar intrinsics - Fix names of many (all?) AVX intrinsics; all were missing .256 suffix, others had additional issues.
Matt Pharr
2011-07-01 16:20:03 +01:00
9b7eb88b0c
Small fixes to calls to SSE double-precision intrinsic calls for scalar values: actually use the scalar version, not the vector version.
Matt Pharr
2011-07-01 16:16:05 +01:00
6ed6961958
Add checks to sample task systems to ensure that TasksInit has been called; if not, print an informative error message.
Matt Pharr
2011-07-01 14:11:16 +01:00