r333778 - [X86] Rewrite avx512vbmi unmasked and maskz macro intrinsics to be wrappers around their __builtin function with appropriate arguments rather than just passing arguments to the masked intrin

2018-06-01 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 1 11:26:35 2018 New Revision: 333778 URL: http://llvm.org/viewvc/llvm-project?rev=333778&view=rev Log: [X86] Rewrite avx512vbmi unmasked and maskz macro intrinsics to be wrappers around their __builtin function with appropriate arguments rather than just passing ar

r333848 - [X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 11:08:37 2018 New Revision: 333848 URL: http://llvm.org/viewvc/llvm-project?rev=333848&view=rev Log: [X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp Modified: cfe/trunk/li

r333846 - [X86] Mark the pointer arguments to expandload builtins as const consistently.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 11:08:34 2018 New Revision: 333846 URL: http://llvm.org/viewvc/llvm-project?rev=333846&view=rev Log: [X86] Mark the pointer arguments to expandload builtins as const consistently. Some of them had it and some didn't. This should make them consistent. Modified:

r333847 - [X86] When emitting masked loads/stores don't check for all ones mask.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 11:08:36 2018 New Revision: 333847 URL: http://llvm.org/viewvc/llvm-project?rev=333847&view=rev Log: [X86] When emitting masked loads/stores don't check for all ones mask. This seems like a premature optimization. It's unlikely a user would pass something the fro

r333850 - Revert r333848 "[X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC"

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 11:41:22 2018 New Revision: 333850 URL: http://llvm.org/viewvc/llvm-project?rev=333850&view=rev Log: Revert r333848 "[X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC" Looks like I missed some changes to make this work. Mod

r333851 - [X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 12:02:57 2018 New Revision: 333851 URL: http://llvm.org/viewvc/llvm-project?rev=333851&view=rev Log: [X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp Modified: cfe/trunk/li

r333853 - [X86] Replace __builtin_ia32_vbroadcastf128_pd256 and __builtin_ia32_vbroadcastf128_ps256 with an unaligned load intrinsics and a __builtin_shufflevector call.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 12:42:59 2018 New Revision: 333853 URL: http://llvm.org/viewvc/llvm-project?rev=333853&view=rev Log: [X86] Replace __builtin_ia32_vbroadcastf128_pd256 and __builtin_ia32_vbroadcastf128_ps256 with an unaligned load intrinsics and a __builtin_shufflevector call. M

r333855 - [X86] Explicitly make the arguments to __slwpcb intrinsic 'void'.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 15:05:19 2018 New Revision: 333855 URL: http://llvm.org/viewvc/llvm-project?rev=333855&view=rev Log: [X86] Explicitly make the arguments to __slwpcb intrinsic 'void'. This is the correct way to say it takes no arguments in C. Modified: cfe/trunk/lib/Headers/l

r333858 - [X86] Remove superfluous escaped new lines from intrinsic files.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 16:31:01 2018 New Revision: 333858 URL: http://llvm.org/viewvc/llvm-project?rev=333858&view=rev Log: [X86] Remove superfluous escaped new lines from intrinsic files. Modified: cfe/trunk/lib/Headers/avx512fintrin.h Modified: cfe/trunk/lib/Headers/avx512fintrin

r333865 - [X86] Fix a couple places that were using macro arguments twice when of the usages could just be undefined.

2018-06-03 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 3 19:56:18 2018 New Revision: 333865 URL: http://llvm.org/viewvc/llvm-project?rev=333865&view=rev Log: [X86] Fix a couple places that were using macro arguments twice when of the usages could just be undefined. One of the arguments was being used when the passthru

r333944 - [X86] Avoid passing _mm_undefined* to builtin_shufflevector if we are able to pass the first input a second time.

2018-06-04 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jun 4 12:28:09 2018 New Revision: 333944 URL: http://llvm.org/viewvc/llvm-project?rev=333944&view=rev Log: [X86] Avoid passing _mm_undefined* to builtin_shufflevector if we are able to pass the first input a second time. This is more consistent with other usages of bui

r333980 - [X86] Mark all the builtins and intrinsics that require MMX and an SSE feature as requiring both mmx and the sse feature.

2018-06-04 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jun 4 20:12:14 2018 New Revision: 333980 URL: http://llvm.org/viewvc/llvm-project?rev=333980&view=rev Log: [X86] Mark all the builtins and intrinsics that require MMX and an SSE feature as requiring both mmx and the sse feature. Previously we only checked the sse featu

r334051 - [X86] Make __builtin_ia32_vec_ext_v2si require ICE for its index argument. Add warnings for out of range indices for __builtin_ia32_vec_ext_v2si, __builtin_ia32_vec_ext_v4hi, and __builtin_i

2018-06-05 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jun 5 14:54:35 2018 New Revision: 334051 URL: http://llvm.org/viewvc/llvm-project?rev=334051&view=rev Log: [X86] Make __builtin_ia32_vec_ext_v2si require ICE for its index argument. Add warnings for out of range indices for __builtin_ia32_vec_ext_v2si, __builtin_ia32_v

r334054 - [X86] Implement __builtin_ia32_vec_ext_v2si correctly even though we only use it with an index of 0.

2018-06-05 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jun 5 15:40:03 2018 New Revision: 334054 URL: http://llvm.org/viewvc/llvm-project?rev=334054&view=rev Log: [X86] Implement __builtin_ia32_vec_ext_v2si correctly even though we only use it with an index of 0. This builtin takes an index as its second operand, but the co

r334057 - [X86] Add builtins for vector element insert and extract for different 128 and 256 bit vector types. Use them to implement the extract and insert intrinsics.

2018-06-05 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jun 5 17:24:55 2018 New Revision: 334057 URL: http://llvm.org/viewvc/llvm-project?rev=334057&view=rev Log: [X86] Add builtins for vector element insert and extract for different 128 and 256 bit vector types. Use them to implement the extract and insert intrinsics. Prev

r334061 - [X86] Move the vec_set/vec_ext builtins for 64-bit elements to BuiltinsX86_64.def.

2018-06-05 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jun 5 21:51:52 2018 New Revision: 334061 URL: http://llvm.org/viewvc/llvm-project?rev=334061&view=rev Log: [X86] Move the vec_set/vec_ext builtins for 64-bit elements to BuiltinsX86_64.def. The instructions these correspond to and the intrinsics that use them are only

r334159 - [X86] Add back _mask, _maskz, and _mask3 builtins for some 512-bit fmadd/fmsub/fmaddsub/fmsubadd builtins.

2018-06-06 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jun 6 19:46:02 2018 New Revision: 334159 URL: http://llvm.org/viewvc/llvm-project?rev=334159&view=rev Log: [X86] Add back _mask, _maskz, and _mask3 builtins for some 512-bit fmadd/fmsub/fmaddsub/fmsubadd builtins. Summary: We recently switch to using a selects in the i

r334208 - [X86] Add back builtins for _mm_slli_si128/_mm_srli_si128 and similar intrinsics.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 10:28:03 2018 New Revision: 334208 URL: http://llvm.org/viewvc/llvm-project?rev=334208&view=rev Log: [X86] Add back builtins for _mm_slli_si128/_mm_srli_si128 and similar intrinsics. We still lower them to native shuffle IR, but we do it in CGBuiltin.cpp now. T

r334237 - [X86] Add builtins for VALIGNQ/VALIGND to enable proper target feature checking.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 14:27:41 2018 New Revision: 334237 URL: http://llvm.org/viewvc/llvm-project?rev=334237&view=rev Log: [X86] Add builtins for VALIGNQ/VALIGND to enable proper target feature checking. We still emit shufflevector instructions we just do it from CGBuiltin.cpp now. Th

r334244 - [X86] Add builtins for shuff32x4/shuff64x2/shufi32x4/shuff64x2 to enable target feature checking and immediate range checking.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 16:03:08 2018 New Revision: 334244 URL: http://llvm.org/viewvc/llvm-project?rev=334244&view=rev Log: [X86] Add builtins for shuff32x4/shuff64x2/shufi32x4/shuff64x2 to enable target feature checking and immediate range checking. Modified: cfe/trunk/include/cla

r334249 - [X86] Add builtins for blend with immediate control to enforce target feature requirements and check immediate range.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 17:00:21 2018 New Revision: 334249 URL: http://llvm.org/viewvc/llvm-project?rev=334249&view=rev Log: [X86] Add builtins for blend with immediate control to enforce target feature requirements and check immediate range. Modified: cfe/trunk/include/clang/Basic/

r334256 - [X86] Add builtins for vpermilps/pd instructions to enable target feature checking.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 17:59:27 2018 New Revision: 334256 URL: http://llvm.org/viewvc/llvm-project?rev=334256&view=rev Log: [X86] Add builtins for vpermilps/pd instructions to enable target feature checking. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cfe/trunk/lib/

r334261 - [X86] Add subvector insert and extract builtins to enable target feature checking and immediate range checking.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 20:24:47 2018 New Revision: 334261 URL: http://llvm.org/viewvc/llvm-project?rev=334261&view=rev Log: [X86] Add subvector insert and extract builtins to enable target feature checking and immediate range checking. Test changes are due to differences in how we gene

r334264 - [X86] Fix some typecasts in intrinsic headers that I messed up in r334261.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 21:09:14 2018 New Revision: 334264 URL: http://llvm.org/viewvc/llvm-project?rev=334264&view=rev Log: [X86] Fix some typecasts in intrinsic headers that I messed up in r334261. This was caught by the Header tests, but not the CodeGen tests. Modified: cfe/trunk

r334265 - [X86] Add builtins for pshufd, pshuflw, and pshufhw to enable target feature and immediate range checking.

2018-06-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 7 23:13:16 2018 New Revision: 334265 URL: http://llvm.org/viewvc/llvm-project?rev=334265&view=rev Log: [X86] Add builtins for pshufd, pshuflw, and pshufhw to enable target feature and immediate range checking. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86

r334266 - [X86] Add builtins for shufps and shufpd to enable target feature and immediate range checking.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 00:18:33 2018 New Revision: 334266 URL: http://llvm.org/viewvc/llvm-project?rev=334266&view=rev Log: [X86] Add builtins for shufps and shufpd to enable target feature and immediate range checking. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cf

Re: r334208 - [X86] Add back builtins for _mm_slli_si128/_mm_srli_si128 and similar intrinsics.

2018-06-08 Thread Craig Topper via cfe-commits
Maybe we're checking the range too early. Maybe we need to do it during IR emission instead of during semantic analysis. ~Craig On Fri, Jun 8, 2018 at 12:59 AM Martin Storsjö via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On Thu, 7 Jun 2018, Craig Topper via cfe

r334311 - [X86] Add builtins for vpermq/vpermpd instructions to enable target feature checking.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 11:00:25 2018 New Revision: 334311 URL: http://llvm.org/viewvc/llvm-project?rev=334311&view=rev Log: [X86] Add builtins for vpermq/vpermpd instructions to enable target feature checking. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cfe/trunk/li

r334310 - [X86] Change immediate type for some builtins from char to int.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 11:00:22 2018 New Revision: 334310 URL: http://llvm.org/viewvc/llvm-project?rev=334310&view=rev Log: [X86] Change immediate type for some builtins from char to int. These builtins are all handled by CGBuiltin.cpp so it doesn't much matter what the immediate type

r334330 - [X86] Fold masking into subvector extract builtins.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 14:50:07 2018 New Revision: 334330 URL: http://llvm.org/viewvc/llvm-project?rev=334330&view=rev Log: [X86] Fold masking into subvector extract builtins. I'm looking into making the select builtins require avx512f, avx512bw, or avx512vl since masking operations ge

r334331 - [X86] Add back some masked vector truncate builtins. Custom IRgen a a few others.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 14:50:08 2018 New Revision: 334331 URL: http://llvm.org/viewvc/llvm-project?rev=334331&view=rev Log: [X86] Add back some masked vector truncate builtins. Custom IRgen a a few others. I'd like to make the select builtins require an avx512f, avx512bw, or avx512vl

r334334 - [X86] Add avx512 feature flags to __builtin_ia32_select*.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 15:19:42 2018 New Revision: 334334 URL: http://llvm.org/viewvc/llvm-project?rev=334334&view=rev Log: [X86] Add avx512 feature flags to __builtin_ia32_select*. There are many masked intrinsics that just wrap a select around a legacy intrinsic from a pre-avx512 ins

r334339 - Use SmallPtrSet instead of SmallSet in places where we iterate over the set.

2018-06-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 8 17:30:45 2018 New Revision: 334339 URL: http://llvm.org/viewvc/llvm-project?rev=334339&view=rev Log: Use SmallPtrSet instead of SmallSet in places where we iterate over the set. SmallSet forwards to SmallPtrSet for pointer types. SmallPtrSet supports iteration, b

r334359 - [X86] Remove masking from the 512-bit packed floating point add/sub/mul/div builtins. Use select in IR instead.

2018-06-09 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sat Jun 9 23:01:42 2018 New Revision: 334359 URL: http://llvm.org/viewvc/llvm-project?rev=334359&view=rev Log: [X86] Remove masking from the 512-bit packed floating point add/sub/mul/div builtins. Use select in IR instead. Modified: cfe/trunk/include/clang/Basic/Builti

r334366 - [X86] Use target independent masked expandload and compressstore intrinsics to implement expandload/compressstore builtins.

2018-06-10 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 10 10:27:05 2018 New Revision: 334366 URL: http://llvm.org/viewvc/llvm-project?rev=334366&view=rev Log: [X86] Use target independent masked expandload and compressstore intrinsics to implement expandload/compressstore builtins. Summary: We've had these target indepe

r334385 - [X86] Remove masking from dbpsadbw builtins, use select builtin instead.

2018-06-10 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jun 10 23:18:29 2018 New Revision: 334385 URL: http://llvm.org/viewvc/llvm-project?rev=334385&view=rev Log: [X86] Remove masking from dbpsadbw builtins, use select builtin instead. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cfe/trunk/lib/Headers/avx5

r334416 - [X86] Properly account for the immediate being multiplied by 8 in the immediate range checking for BI__builtin_ia32_psrldqi128 and friends.

2018-06-11 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jun 11 09:34:10 2018 New Revision: 334416 URL: http://llvm.org/viewvc/llvm-project?rev=334416&view=rev Log: [X86] Properly account for the immediate being multiplied by 8 in the immediate range checking for BI__builtin_ia32_psrldqi128 and friends. The limit was set to 1

r334422 - [X86] Fix operand order in the shuffle created for blend builtins.

2018-06-11 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jun 11 10:06:01 2018 New Revision: 334422 URL: http://llvm.org/viewvc/llvm-project?rev=334422&view=rev Log: [X86] Fix operand order in the shuffle created for blend builtins. This was broken when the builtin was added in r334249. Modified: cfe/trunk/lib/CodeGen/CGBu

r334577 - [X86] Remove masking from avx512vbmi2 concat and shift by immediate builtins. Use select builtins instead.

2018-06-13 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jun 13 00:19:28 2018 New Revision: 334577 URL: http://llvm.org/viewvc/llvm-project?rev=334577&view=rev Log: [X86] Remove masking from avx512vbmi2 concat and shift by immediate builtins. Use select builtins instead. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86

r334751 - [X86] Add inline assembly versions of _InterlockedExchange_HLEAcquire/Release and _InterlockedCompareExchange_HLEAcquire/Release for MSVC compatibility.

2018-06-14 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 14 11:43:52 2018 New Revision: 334751 URL: http://llvm.org/viewvc/llvm-project?rev=334751&view=rev Log: [X86] Add inline assembly versions of _InterlockedExchange_HLEAcquire/Release and _InterlockedCompareExchange_HLEAcquire/Release for MSVC compatibility. Clang/LLV

r334773 - [X86] Rename __builtin_ia32_pslldqi128 to __builtin_ia32_pslldqi128_byteshift and similar for other sizes. Remove the multiply by 8 from the header files.

2018-06-14 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 14 15:02:35 2018 New Revision: 334773 URL: http://llvm.org/viewvc/llvm-project?rev=334773&view=rev Log: [X86] Rename __builtin_ia32_pslldqi128 to __builtin_ia32_pslldqi128_byteshift and similar for other sizes. Remove the multiply by 8 from the header files. The pre

r334846 - [X86] The immediate argument to getmantpd*_mask should be an ICE and it should only be 4 bits wide.

2018-06-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 15 10:03:32 2018 New Revision: 334846 URL: http://llvm.org/viewvc/llvm-project?rev=334846&view=rev Log: [X86] The immediate argument to getmantpd*_mask should be an ICE and it should only be 4 bits wide. We already checked this for the scalar version, but missed the

r334847 - [X86] __builtin_ia32_prord512_mask, __builtin_ia32_prorq512_mask, __builtin_ia32_shufpd should only accept an ICE constant.

2018-06-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jun 15 10:40:37 2018 New Revision: 334847 URL: http://llvm.org/viewvc/llvm-project?rev=334847&view=rev Log: [X86] __builtin_ia32_prord512_mask, __builtin_ia32_prorq512_mask, __builtin_ia32_shufpd should only accept an ICE constant. The rotates also need to check for the

r335086 - [X86] Undefine _mm512_mask_reduce_operator macro in avx512fintrin.h before redefining it.

2018-06-19 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jun 19 17:31:39 2018 New Revision: 335086 URL: http://llvm.org/viewvc/llvm-project?rev=335086&view=rev Log: [X86] Undefine _mm512_mask_reduce_operator macro in avx512fintrin.h before redefining it. Modified: cfe/trunk/lib/Headers/avx512fintrin.h Modified: cfe/trunk

r335200 - [X86] Remove masking from the 512-bit floating point max/min builtins. Use select in IR instead.

2018-06-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jun 20 22:01:01 2018 New Revision: 335200 URL: http://llvm.org/viewvc/llvm-project?rev=335200&view=rev Log: [X86] Remove masking from the 512-bit floating point max/min builtins. Use select in IR instead. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def c

r335253 - [X86] Rewrite the add/mul/or/and reduction intrinsics to make better use of other intrinsics and remove undef shuffle indices.

2018-06-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 21 09:41:28 2018 New Revision: 335253 URL: http://llvm.org/viewvc/llvm-project?rev=335253&view=rev Log: [X86] Rewrite the add/mul/or/and reduction intrinsics to make better use of other intrinsics and remove undef shuffle indices. Similar to what was done to max/min

r335259 - [Intrinsics] Add/move some builtin declarations in intrin.h to get ms-intrinsics.c to not issue warnings

2018-06-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 21 10:07:04 2018 New Revision: 335259 URL: http://llvm.org/viewvc/llvm-project?rev=335259&view=rev Log: [Intrinsics] Add/move some builtin declarations in intrin.h to get ms-intrinsics.c to not issue warnings ud2 and int2c were missing declarations entirely. And the

r335270 - [X86] Correct the inline assembly implementations of __movsb/w/d/q and __stosw/d/q to mark registers/memory as modified

2018-06-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 21 11:56:30 2018 New Revision: 335270 URL: http://llvm.org/viewvc/llvm-project?rev=335270&view=rev Log: [X86] Correct the inline assembly implementations of __movsb/w/d/q and __stosw/d/q to mark registers/memory as modified The inline assembly for these didn't mark

r335308 - [X86] Update handling in CGBuiltin to be tolerant of out of range immediates.

2018-06-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jun 21 16:39:47 2018 New Revision: 335308 URL: http://llvm.org/viewvc/llvm-project?rev=335308&view=rev Log: [X86] Update handling in CGBuiltin to be tolerant of out of range immediates. D48464 contains changes that will loosen some of the range checks in SemaChecking to

r344117 - [X86] Remove FeatureRTM from Skylake processor list

2018-10-10 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Oct 10 00:43:45 2018 New Revision: 344117 URL: http://llvm.org/viewvc/llvm-project?rev=344117&view=rev Log: [X86] Remove FeatureRTM from Skylake processor list Summary: There are a LOT of Skylakes and later without TSX-NI. Examples: - SKL: https://ark.intel.com/products

r344824 - [X86] When checking the bits in cpu_features for function multiversioning dispatcher in the resolver, make sure all the required bits are set. Not just one of them

2018-10-19 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Oct 19 18:30:00 2018 New Revision: 344824 URL: http://llvm.org/viewvc/llvm-project?rev=344824&view=rev Log: [X86] When checking the bits in cpu_features for function multiversioning dispatcher in the resolver, make sure all the required bits are set. Not just one of the

r344832 - [X86] Add support for more than 32 features for __builtin_cpu_is

2018-10-19 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Oct 19 20:51:52 2018 New Revision: 344832 URL: http://llvm.org/viewvc/llvm-project?rev=344832&view=rev Log: [X86] Add support for more than 32 features for __builtin_cpu_is libgcc supports more than 32 features by adding a new 32-bit variable __cpu_features2. This adds

r344861 - [X86] Add missing intrinsics to match icc.

2018-10-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sat Oct 20 12:28:50 2018 New Revision: 344861 URL: http://llvm.org/viewvc/llvm-project?rev=344861&view=rev Log: [X86] Add missing intrinsics to match icc. This adds _mm_and_epi32, _mm_and_epi64 _mm_andnot_epi32, _mm_andnot_epi64 _mm_or_epi32, _mm_or_epi64 _mm_xor_epi32, _mm_

r344862 - [X86] Add more intrinsics to match icc.

2018-10-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sat Oct 20 12:28:52 2018 New Revision: 344862 URL: http://llvm.org/viewvc/llvm-project?rev=344862&view=rev Log: [X86] Add more intrinsics to match icc. This adds _mm_loadu_epi8, _mm256_loadu_epi8, _mm512_loadu_epi8 _mm_loadu_epi16, _mm256_loadu_epi16, _mm512_loadu_epi16 _mm_

r344929 - [X86] Add new features to the priority list for target attribute multiversioning.

2018-10-22 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Oct 22 10:59:58 2018 New Revision: 344929 URL: http://llvm.org/viewvc/llvm-project?rev=344929&view=rev Log: [X86] Add new features to the priority list for target attribute multiversioning. Modified: cfe/trunk/include/clang/Basic/X86Target.def Modified: cfe/trunk/i

r344978 - [X86] Remove 'rtm' feature from KNL.

2018-10-22 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Oct 22 17:15:37 2018 New Revision: 344978 URL: http://llvm.org/viewvc/llvm-project?rev=344978&view=rev Log: [X86] Remove 'rtm' feature from KNL. I'm unsure if KNL has this feature, but the backend never thought it did, only clang did. The predefined-arch-macros test los

r345176 - [CodeGen] Update test checks missed in r345168.

2018-10-24 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Oct 24 11:45:44 2018 New Revision: 345176 URL: http://llvm.org/viewvc/llvm-project?rev=345176&view=rev Log: [CodeGen] Update test checks missed in r345168. These tests don't run unless the aarch64 target is registered and my testing had been on an x86 only build directo

r345237 - [CodeGen] Always emit the 'min-legal-vector-width' attribute even when the value is 0.

2018-10-24 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Oct 24 22:04:35 2018 New Revision: 345237 URL: http://llvm.org/viewvc/llvm-project?rev=345237&view=rev Log: [CodeGen] Always emit the 'min-legal-vector-width' attribute even when the value is 0. The X86 backend will need to see the attribute to make decisions. If it isn

r351029 - [X86] Remove mask parameter from vpshufbitqmb intrinsics. Change result to a vXi1 vector.

2019-01-13 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jan 13 16:03:55 2019 New Revision: 351029 URL: http://llvm.org/viewvc/llvm-project?rev=351029&view=rev Log: [X86] Remove mask parameter from vpshufbitqmb intrinsics. Change result to a vXi1 vector. We'll do the scalar<->vXi1 conversions with bitcasts in IR. Fixes PR402

r351036 - [X86] Remove mask parameter from avx512 pmultishiftqb intrinsics. Use select in IR instead.

2019-01-14 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jan 14 00:46:51 2019 New Revision: 351036 URL: http://llvm.org/viewvc/llvm-project?rev=351036&view=rev Log: [X86] Remove mask parameter from avx512 pmultishiftqb intrinsics. Use select in IR instead. Fixes PR40259 Modified: cfe/trunk/include/clang/Basic/BuiltinsX86

r351160 - [X86] Make _xgetbv/_xsetbv on non-windows platforms

2019-01-14 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Jan 14 21:03:18 2019 New Revision: 351160 URL: http://llvm.org/viewvc/llvm-project?rev=351160&view=rev Log: [X86] Make _xgetbv/_xsetbv on non-windows platforms Summary: This patch attempts to redo what was tried in r278783, but was reverted. These intrinsics should be a

Re: r351160 - [X86] Make _xgetbv/_xsetbv on non-windows platforms

2019-01-15 Thread Craig Topper via cfe-commits
^ >> lib/clang/include/xsaveintrin.h:49:53: note: expanded from macro '_xgetbv' >> #define _xgetbv(A) __builtin_ia32_xgetbv((long long)(A)) >> >> On Tue, Jan 15, 2019 at 6:06 AM Craig Topper via cfe-commits < >> cfe-commits@lists.llvm.org&

r351230 - [Nios2] Remove Nios2 backend

2019-01-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jan 15 11:58:36 2019 New Revision: 351230 URL: http://llvm.org/viewvc/llvm-project?rev=351230&view=rev Log: [Nios2] Remove Nios2 backend As mentioned here http://lists.llvm.org/pipermail/llvm-dev/2019-January/129121.html This backend is incomplete and has not been main

Re: r351160 - [X86] Make _xgetbv/_xsetbv on non-windows platforms

2019-01-15 Thread Craig Topper via cfe-commits
expected ')' >>>> V8_INLINE uint64_t _xgetbv(unsigned int xcr) { >>>> ^ >>>> src/x64/assembler-x64.cc:35:20: note: to match this '(' >>>> V8_INLINE uint64_t _xgetbv(unsigned int xcr) { >>>&g

Re: r351160 - [X86] Make _xgetbv/_xsetbv on non-windows platforms

2019-01-15 Thread Craig Topper via cfe-commits
cro 'V8_INLINE' >>>>>> # define V8_INLINE inline __attribute__((always_inline)) >>>>>>^ >>>>>> src/x64/assembler-x64.cc:35:41: error: expected ')' >>>>>> V8_INLINE uint64_t _xgetbv(unsigned in

r351301 - [X86] Correct the type string for __builtin_ia32_gathersiv16sf to make the indices an integer type not an FP type.

2019-01-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Jan 15 23:17:14 2019 New Revision: 351301 URL: http://llvm.org/viewvc/llvm-project?rev=351301&view=rev Log: [X86] Correct the type string for __builtin_ia32_gathersiv16sf to make the indices an integer type not an FP type. The element count and width remain the same. Th

r351390 - [X86] Add versions of the avx512 gather intrinsics that take the mask as a vXi1 vector instead of a scalar

2019-01-16 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jan 16 14:34:33 2019 New Revision: 351390 URL: http://llvm.org/viewvc/llvm-project?rev=351390&view=rev Log: [X86] Add versions of the avx512 gather intrinsics that take the mask as a vXi1 vector instead of a scalar We need to custom handle these so we can turn the scala

r351391 - Recommit r351160 "[X86] Make _xgetbv/_xsetbv on non-windows platforms"

2019-01-16 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jan 16 14:56:25 2019 New Revision: 351391 URL: http://llvm.org/viewvc/llvm-project?rev=351391&view=rev Log: Recommit r351160 "[X86] Make _xgetbv/_xsetbv on non-windows platforms" V8 has been fixed now. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cfe/

r351408 - [X86] Add custom emission for the avx512 scatter builtins to convert from scalar integer to vXi1 for the mask arguments to the intrinsics.

2019-01-16 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Jan 16 16:34:19 2019 New Revision: 351408 URL: http://llvm.org/viewvc/llvm-project?rev=351408&view=rev Log: [X86] Add custom emission for the avx512 scatter builtins to convert from scalar integer to vXi1 for the mask arguments to the intrinsics. Modified: cfe/trunk

r351568 - [X86] Only define _XCR_XFEATURE_ENABLED_MASK in xsaveintrin.h when _MSC_VER is defined. Remove from intrin.h.

2019-01-18 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jan 18 09:51:51 2019 New Revision: 351568 URL: http://llvm.org/viewvc/llvm-project?rev=351568&view=rev Log: [X86] Only define _XCR_XFEATURE_ENABLED_MASK in xsaveintrin.h when _MSC_VER is defined. Remove from intrin.h. I think this was my intention when I added it xsavei

r351694 - [X86] Remove the cvtuqq2ps256/cvtqq2ps256 mask builtins. Replace with uitofp/sitofp and select.

2019-01-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jan 20 11:04:56 2019 New Revision: 351694 URL: http://llvm.org/viewvc/llvm-project?rev=351694&view=rev Log: [X86] Remove the cvtuqq2ps256/cvtqq2ps256 mask builtins. Replace with uitofp/sitofp and select. Reviewers: RKSimon, spatel Reviewed By: RKSimon Subscribers: kri

r351708 - [X86] Add missing test cases for some int/fp->fp conversion intrinsics with rounding mode. Use non-default rounding mode on some tests.

2019-01-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jan 20 15:49:50 2019 New Revision: 351708 URL: http://llvm.org/viewvc/llvm-project?rev=351708&view=rev Log: [X86] Add missing test cases for some int/fp->fp conversion intrinsics with rounding mode. Use non-default rounding mode on some tests. For some reason we were mi

r352173 - [X86] Remove mask and passthru arguments from vpconflict builtins. Use select in IR instead.

2019-01-24 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Jan 24 23:08:22 2019 New Revision: 352173 URL: http://llvm.org/viewvc/llvm-project?rev=352173&view=rev Log: [X86] Remove mask and passthru arguments from vpconflict builtins. Use select in IR instead. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def cfe/t

r352267 - [X86] Custom codegen 512-bit cvt(u)qq2tops, cvt(u)qqtopd, and cvt(u)dqtops intrinsics.

2019-01-25 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Jan 25 18:42:01 2019 New Revision: 352267 URL: http://llvm.org/viewvc/llvm-project?rev=352267&view=rev Log: [X86] Custom codegen 512-bit cvt(u)qq2tops, cvt(u)qqtopd, and cvt(u)dqtops intrinsics. Summary: The 512-bit cvt(u)qq2tops, cvt(u)qqtopd, and cvt(u)dqtops intrinsi

r352344 - [X86] Add new variadic avx512 compress/expand intrinsics that use vXi1 types for the mask argument.

2019-01-27 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Jan 27 23:03:10 2019 New Revision: 352344 URL: http://llvm.org/viewvc/llvm-project?rev=352344&view=rev Log: [X86] Add new variadic avx512 compress/expand intrinsics that use vXi1 types for the mask argument. Custom lower the builtins to these intrinsics. This enables th

r347682 - [X86] Add -march=cascadelake support in clang.

2018-11-27 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Nov 27 10:05:14 2018 New Revision: 347682 URL: http://llvm.org/viewvc/llvm-project?rev=347682&view=rev Log: [X86] Add -march=cascadelake support in clang. This is skylake-avx512 with the addition of avx512vnni ISA. Patch by Jianping Chen Differential Revision: https://

r348738 - [X86] Remove the addcarry builtins. Leaving only the addcarryx builtins since that matches gcc.

2018-12-09 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Dec 9 22:07:59 2018 New Revision: 348738 URL: http://llvm.org/viewvc/llvm-project?rev=348738&view=rev Log: [X86] Remove the addcarry builtins. Leaving only the addcarryx builtins since that matches gcc. The addcarry and addcarryx builtins do the same thing. The only di

r354915 - [X86] Add 'znver2' and 'cascadelake' to the __builtin_cpu_is test.

2019-02-26 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Feb 26 11:20:04 2019 New Revision: 354915 URL: http://llvm.org/viewvc/llvm-project?rev=354915&view=rev Log: [X86] Add 'znver2' and 'cascadelake' to the __builtin_cpu_is test. These are supported by at least libgcc trunk so we can include them now. Modified: cfe/trun

r355659 - [X86] Make x86-intrinsics-headers-clean.cpp stricter.

2019-03-07 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Mar 7 17:15:18 2019 New Revision: 355659 URL: http://llvm.org/viewvc/llvm-project?rev=355659&view=rev Log: [X86] Make x86-intrinsics-headers-clean.cpp stricter. Remove the -Wno-ignored-attributes. Add -fno-lax-vector-conversions Also use -ffreestanding instead of defi

r356008 - [X86] Remove 'cx16' from 'prescott' and 'yonah' as they are 32-bit only CPUs and cmpxchg16b requires 64-bit mode.

2019-03-12 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Mar 12 22:14:52 2019 New Revision: 356008 URL: http://llvm.org/viewvc/llvm-project?rev=356008&view=rev Log: [X86] Remove 'cx16' from 'prescott' and 'yonah' as they are 32-bit only CPUs and cmpxchg16b requires 64-bit mode. Modified: cfe/trunk/lib/Basic/Targets/X86.cp

r356007 - [X86] Add 'yonah' test to predefined-arch-macros.c test.

2019-03-12 Thread Craig Topper via cfe-commits
Author: ctopper Date: Tue Mar 12 22:14:50 2019 New Revision: 356007 URL: http://llvm.org/viewvc/llvm-project?rev=356007&view=rev Log: [X86] Add 'yonah' test to predefined-arch-macros.c test. Modified: cfe/trunk/test/Preprocessor/predefined-arch-macros.c Modified: cfe/trunk/test/Preprocessor/

r356118 - [X86] Only define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 in 64-bit mode.

2019-03-13 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Mar 13 22:45:42 2019 New Revision: 356118 URL: http://llvm.org/viewvc/llvm-project?rev=356118&view=rev Log: [X86] Only define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 in 64-bit mode. Summary: This define should correspond to CMPXCHG16B being available which requires 64-bit m

r356423 - [X86] Add gcc rotate intrinsics to ia32intrin.h

2019-03-18 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Mar 18 15:25:57 2019 New Revision: 356423 URL: http://llvm.org/viewvc/llvm-project?rev=356423&view=rev Log: [X86] Add gcc rotate intrinsics to ia32intrin.h This is another attempt at what Erich Keane tried to do in r355322. This adds rolb, rolw, rold, rolq and their ror

r356537 - [X86] Separate PentiumPro and i686. They aren't aliases in the backend.

2019-03-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Mar 20 00:31:18 2019 New Revision: 356537 URL: http://llvm.org/viewvc/llvm-project?rev=356537&view=rev Log: [X86] Separate PentiumPro and i686. They aren't aliases in the backend. PentiumPro has HasNOPL set in the backend. i686 does not. Despite having a function that l

r356580 - [X86] Remove getCPUKindCanonicalName which is unused.

2019-03-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Mar 20 10:26:51 2019 New Revision: 356580 URL: http://llvm.org/viewvc/llvm-project?rev=356580&view=rev Log: [X86] Remove getCPUKindCanonicalName which is unused. Differential Revision: https://reviews.llvm.org/D59578 Modified: cfe/trunk/lib/Basic/Targets/X86.cpp

r356609 - [X86] Add __crc32b/__crc32w/__crc32d/__crc32q intrinsics to match gcc and icc.

2019-03-20 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Mar 20 13:25:28 2019 New Revision: 356609 URL: http://llvm.org/viewvc/llvm-project?rev=356609&view=rev Log: [X86] Add __crc32b/__crc32w/__crc32d/__crc32q intrinsics to match gcc and icc. gcc has these intrinsics in ia32intrin.h as well. And icc implements them though the

r356686 - [X86] Use the CPUKind enum from PROC_ALIAS to directly get the CPUKind in fillValidCPUList.

2019-03-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Mar 21 10:33:20 2019 New Revision: 356686 URL: http://llvm.org/viewvc/llvm-project?rev=356686&view=rev Log: [X86] Use the CPUKind enum from PROC_ALIAS to directly get the CPUKind in fillValidCPUList. We were using getCPUKind which translates the string to the enum also

r356689 - [X86] Add __popcntd and __popcntq to ia32intrin.h to match gcc and icc. Remove popcnt feature flag from _popcnt32/_popcnt64 and move to ia32intrin.h to match gcc

2019-03-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Mar 21 10:43:53 2019 New Revision: 356689 URL: http://llvm.org/viewvc/llvm-project?rev=356689&view=rev Log: [X86] Add __popcntd and __popcntq to ia32intrin.h to match gcc and icc. Remove popcnt feature flag from _popcnt32/_popcnt64 and move to ia32intrin.h to match gcc

r356706 - [Driver] Pass -malign-double from the driver to the cc1 command line

2019-03-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Mar 21 13:07:24 2019 New Revision: 356706 URL: http://llvm.org/viewvc/llvm-project?rev=356706&view=rev Log: [Driver] Pass -malign-double from the driver to the cc1 command line -malign-double is currently only implemented in the -cc1 interface. But its declared in Optio

r356709 - [X86] Correct the value of MaxAtomicInlineWidth for pre-586 cpus

2019-03-21 Thread Craig Topper via cfe-commits
Author: ctopper Date: Thu Mar 21 13:36:08 2019 New Revision: 356709 URL: http://llvm.org/viewvc/llvm-project?rev=356709&view=rev Log: [X86] Correct the value of MaxAtomicInlineWidth for pre-586 cpus Use the new cx8 feature flag that was added to the backend to represent support for cmpxchg8b. Us

r356848 - [X86] Add BSR/BSF/BSWAP intrinsics to ia32intrin.h to match gcc.

2019-03-23 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sat Mar 23 17:56:52 2019 New Revision: 356848 URL: http://llvm.org/viewvc/llvm-project?rev=356848&view=rev Log: [X86] Add BSR/BSF/BSWAP intrinsics to ia32intrin.h to match gcc. Summary: These are all implemented by icc as well. I made bit_scan_forward/reverse forward to the

r356862 - [X86] Make _bswap intrinsic a function instead of a macro to hopefully fix the chromium build.

2019-03-24 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sun Mar 24 11:00:20 2019 New Revision: 356862 URL: http://llvm.org/viewvc/llvm-project?rev=356862&view=rev Log: [X86] Make _bswap intrinsic a function instead of a macro to hopefully fix the chromium build. This intrinsic was added in r356848 but was implemented as a macro

Re: r356848 - [X86] Add BSR/BSF/BSWAP intrinsics to ia32intrin.h to match gcc.

2019-03-24 Thread Craig Topper via cfe-commits
Could > _bswap be an inline function instead? > > https://bugs.chromium.org/p/chromium/issues/detail?id=945172 > > On Sat, Mar 23, 2019 at 8:55 PM Craig Topper via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: ctopper >> Date: Sat Mar

r357924 - [X86] Add some fp to integer conversion intrinsics to Sema::CheckX86BuiltinRoundingOrSAE so their rounding controls will be checked.

2019-04-08 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Apr 8 10:05:57 2019 New Revision: 357924 URL: http://llvm.org/viewvc/llvm-project?rev=357924&view=rev Log: [X86] Add some fp to integer conversion intrinsics to Sema::CheckX86BuiltinRoundingOrSAE so their rounding controls will be checked. If we don't check this in the

r358427 - [X86] Restore the pavg intrinsics.

2019-04-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Apr 15 10:17:35 2019 New Revision: 358427 URL: http://llvm.org/viewvc/llvm-project?rev=358427&view=rev Log: [X86] Restore the pavg intrinsics. The pattern we replaced these with may be too hard to match as demonstrated by PR41496 and PR41316. This patch restores the int

r358435 - [X86] Improve avx512-kconstraints-att_inline_asm.c to not be easily defeated by deadcode elimination. Improve CHECK lines to check IR types used. NFC

2019-04-15 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Apr 15 11:39:36 2019 New Revision: 358435 URL: http://llvm.org/viewvc/llvm-project?rev=358435&view=rev Log: [X86] Improve avx512-kconstraints-att_inline_asm.c to not be easily defeated by deadcode elimination. Improve CHECK lines to check IR types used. NFC I plan to us

r343126 - [X86] For lzcnt/tzcnt intrinsics use cttz/ctlz intrinsics with zero_undef flag set to false.

2018-09-26 Thread Craig Topper via cfe-commits
Author: ctopper Date: Wed Sep 26 10:01:44 2018 New Revision: 343126 URL: http://llvm.org/viewvc/llvm-project?rev=343126&view=rev Log: [X86] For lzcnt/tzcnt intrinsics use cttz/ctlz intrinsics with zero_undef flag set to false. Previously we used a select and the zero_undef=true intrinsic. In -O2

r343343 - [X86] Add the movbe instruction intrinsics from icc.

2018-09-28 Thread Craig Topper via cfe-commits
Author: ctopper Date: Fri Sep 28 10:09:51 2018 New Revision: 343343 URL: http://llvm.org/viewvc/llvm-project?rev=343343&view=rev Log: [X86] Add the movbe instruction intrinsics from icc. These intrinsics exist in icc. They can be found on the Intel Intrinsics Guide website. All the backend supp

r343388 - [X86] Add more of the icc unaligned load/store to/from 128 bit vector intrinsics

2018-09-29 Thread Craig Topper via cfe-commits
Author: ctopper Date: Sat Sep 29 10:49:42 2018 New Revision: 343388 URL: http://llvm.org/viewvc/llvm-project?rev=343388&view=rev Log: [X86] Add more of the icc unaligned load/store to/from 128 bit vector intrinsics Summary: This patch adds _mm_loadu_si32 _mm_loadu_si16 _mm_storeu_si64 _mm_storeu_

r353142 - [X86] Change MS inline asm clobber list filter to check for 'fpsr' instead of 'fpsw' after D57641.

2019-02-04 Thread Craig Topper via cfe-commits
Author: ctopper Date: Mon Feb 4 22:13:14 2019 New Revision: 353142 URL: http://llvm.org/viewvc/llvm-project?rev=353142&view=rev Log: [X86] Change MS inline asm clobber list filter to check for 'fpsr' instead of 'fpsw' after D57641. Summary: The backend used to print the x87 FPSW register as 'fp

<    1   2   3   4   5   6   7   8   9   10   >