diff options
| author | Craig Topper <craig.topper@intel.com> | 2019-09-22 23:48:50 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2019-09-22 23:48:50 +0000 |
| commit | e4c17651243efb6a9f435cff06046893c91d61e0 (patch) | |
| tree | beef9d6996d9cd64a14f7231a8cf24acc8e82387 /clang/test | |
| parent | 7b4d40e8db36532abdd0c5cd6b5c42a8d414ca42 (diff) | |
| download | bcm5719-llvm-e4c17651243efb6a9f435cff06046893c91d61e0.tar.gz bcm5719-llvm-e4c17651243efb6a9f435cff06046893c91d61e0.zip | |
[X86] Require last argument to LWPINS/LWPVAL builtins to be an ICE. Add ImmArg to the llvm intrinsics.
Update the isel patterns to use timm instead of imm.
llvm-svn: 372534
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/Sema/builtins-x86.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/Sema/builtins-x86.c b/clang/test/Sema/builtins-x86.c index a00044f85d0..cbaf7bcde87 100644 --- a/clang/test/Sema/builtins-x86.c +++ b/clang/test/Sema/builtins-x86.c @@ -185,3 +185,19 @@ __m256i test_mm256_shrdi_epi16(__m256i __A, __m256i __B) { __m128i test_mm128_shrdi_epi16(__m128i __A, __m128i __B) { return __builtin_ia32_vpshrdw128(__A, __B, 1024); // expected-error {{argument value 1024 is outside the valid range [0, 255]}} } + +unsigned char test_lwpins32(unsigned int data2, unsigned int data1, unsigned int flags) { + return __builtin_ia32_lwpins32(data2, data1, flags); // expected-error {{argument to '__builtin_ia32_lwpins32' must be a constant integer}} +} + +void test_lwpval32(unsigned int data2, unsigned int data1, unsigned int flags) { + __builtin_ia32_lwpval32(data2, data1, flags); // expected-error {{argument to '__builtin_ia32_lwpval32' must be a constant integer}} +} + +unsigned char test_lwpins64(unsigned long long data2, unsigned long long data1, unsigned int flags) { + return __builtin_ia32_lwpins64(data2, data1, flags); // expected-error {{argument to '__builtin_ia32_lwpins64' must be a constant integer}} +} + +void test_lwpval64(unsigned long long data2, unsigned long long data1, unsigned int flags) { + __builtin_ia32_lwpval64(data2, data1, flags); // expected-error {{argument to '__builtin_ia32_lwpval64' must be a constant integer}} +} |

