Manman Ren
c94122e05b
Intrinsics: fix extract & insert when index is out of bound.
...
Now, all extract & insert intrinsics should have the correct and operation
to ignore higher bits.
rdar://15250497
llvm-svn: 193267
2013-10-23 20:33:14 +00:00
Eli Friedman
9b04f41899
Fix return type of _mm_extract_epi8 etc.
...
PR17300.
llvm-svn: 191120
2013-09-21 00:05:25 +00:00
David Blaikie
3302f2bd46
PR14964: intrinsic headers using non-reserved identifiers
...
Several of the intrinsic headers were using plain non-reserved identifiers.
C++11 17.6.4.3.2 [global.names] p1 reservers names containing a double
begining with an underscore followed by an uppercase letter for any use.
I think I got them all, but open to being corrected. For the most part I
didn't bother updating function-like macro parameter names because I don't
believe they're subject to any such collission - though some function-like
macros already follow this convention (I didn't update them in part because
the churn was more significant as several function-like macros use the double
underscore prefixed version of the same name as a parameter in their
implementation)
llvm-svn: 172666
2013-01-16 23:08:36 +00:00
Craig Topper
74c17c65e4
Correctly check argument types for some vector macros in smmintrin.h. Put parentheses around uses of vector macro arguments.
...
llvm-svn: 153732
2012-03-30 07:01:17 +00:00
Craig Topper
97f042f2d6
Add _mm_minpos_epu16 to smmintrin.h. Fixes PR12399.
...
llvm-svn: 153726
2012-03-30 05:41:28 +00:00
Craig Topper
1de8348db7
Add popcnt feature flag to match gcc. This flag is implied when sse42 is enabled, but can be disabled separately. Move popcnt intrinsics to popcntintrin.h to match gcc.
...
llvm-svn: 147340
2011-12-29 16:10:46 +00:00
Craig Topper
a89747dd1e
Add AVX2 intrinsics for pavg, pblend, and pcmp instructions. Also remove unneeded builtins for SSE pcmp. Change SSE pcmpeqq and pcmpgtq to not use builtins and just use vector == and >.
...
llvm-svn: 146969
2011-12-20 09:55:26 +00:00
Bob Wilson
16c4195548
Fix obvious error in _mm_test_all_zeros. PR11565.
...
Patch by Mathias Gaunard!
llvm-svn: 146565
2011-12-14 17:17:16 +00:00
Chandler Carruth
222c66db38
Fix a blatant typo or cut/paste-o reported by users of this header.
...
llvm-svn: 146251
2011-12-09 09:23:55 +00:00
Eli Friedman
f16beb3942
Fix some additional x86 intrinsics to use "I" (ICE) markings. Fix *mmintrin.h to take them into account.
...
<rdar://problem/10341145>
llvm-svn: 144246
2011-11-10 00:11:13 +00:00
Eli Friedman
9586cdb01e
Misc fixes to pcmp*stri.
...
llvm-svn: 144073
2011-11-08 04:13:51 +00:00
Eric Christopher
2a9898f0a2
Move some type defines from smmintrin.h to emmintrin.h to match where
...
gcc defines them.
llvm-svn: 112146
2010-08-26 02:09:25 +00:00
Chris Lattner
9052c35479
fix some vector extractions to return properly zero extended values
...
(instead of sign extending) to match ICC. GCC is changing this in
a series of their own PRs (e.g. 41323).
llvm-svn: 111637
2010-08-20 16:08:33 +00:00
Daniel Dunbar
f5e075d392
Headers: Fix quoting of macro arguments in a couple more places.
...
llvm-svn: 105331
2010-06-02 16:35:01 +00:00
Eric Christopher
bd9a3aecd6
This is just a simple v4si * v4si, make it so.
...
llvm-svn: 99587
2010-03-26 00:51:28 +00:00
Anders Carlsson
91e18c93c4
Make the license header in smmintrin.h match the other SSE headers.
...
llvm-svn: 99384
2010-03-24 05:31:31 +00:00
Chris Lattner
7eac805bb0
fix PR6658: inline isn't a keyword in C89 mode, use __inline__ instead.
...
llvm-svn: 99190
2010-03-22 18:14:12 +00:00
Eric Christopher
08f135274d
Add sse4.2 header and builtin support.
...
llvm-svn: 99051
2010-03-20 07:43:28 +00:00
Eric Christopher
8c6f61394f
Add remaining sse4.1 intrinsics and builtins.
...
llvm-svn: 98587
2010-03-15 23:22:58 +00:00
Eric Christopher
6932b2e8b7
Add SSE4 packed integer comparisons and corresponding intrinsics.
...
llvm-svn: 98323
2010-03-12 01:22:33 +00:00
Eric Christopher
e486f68b59
Integer array extraction for sse4.1.
...
llvm-svn: 98305
2010-03-11 23:50:18 +00:00
Eric Christopher
e7594305bc
Add packed integer array insertion.
...
llvm-svn: 98299
2010-03-11 23:36:29 +00:00
Eric Christopher
1dca62055a
Add insert/extract_ps and related random macros.
...
llvm-svn: 98114
2010-03-10 00:50:58 +00:00
Eric Christopher
4c70358296
Add sse4.1 packed min and max intrinsics.
...
llvm-svn: 97907
2010-03-07 07:00:42 +00:00
Eric Christopher
7288890b51
Add load hint instruction intrinsic.
...
llvm-svn: 97904
2010-03-07 06:29:09 +00:00
Eric Christopher
87990fe5df
Add in support for dword multiply and fp dot product intrinsics.
...
llvm-svn: 97902
2010-03-07 06:17:19 +00:00
Eric Christopher
b0759be4d0
Fix _MM_FROUND_NEARBYINT and move rounding intrinsics to macros.
...
llvm-svn: 97874
2010-03-06 10:31:44 +00:00
Eric Christopher
94567c04bb
First start on smmintrin.h, rounding and blending.
...
llvm-svn: 97717
2010-03-04 02:56:19 +00:00