diff options
author | Craig Topper <craig.topper@intel.com> | 2018-06-15 17:03:32 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2018-06-15 17:03:32 +0000 |
commit | 03a1d48a415dcad0447d1aaeac0e4dd264d3dd90 (patch) | |
tree | 3a5e58fc0d598e020fc1626ff68b340b580e705d /clang/lib/Sema/SemaChecking.cpp | |
parent | 1a70426ac1648c987f696b1d77c156f917b32ad6 (diff) | |
download | bcm5719-llvm-03a1d48a415dcad0447d1aaeac0e4dd264d3dd90.tar.gz bcm5719-llvm-03a1d48a415dcad0447d1aaeac0e4dd264d3dd90.zip |
[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 vector version somehow.
llvm-svn: 334846
Diffstat (limited to 'clang/lib/Sema/SemaChecking.cpp')
-rw-r--r-- | clang/lib/Sema/SemaChecking.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index 9de512c7008..240fd588d1e 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -2727,6 +2727,12 @@ bool Sema::CheckX86BuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) { case X86::BI__builtin_ia32_roundpd: case X86::BI__builtin_ia32_roundps256: case X86::BI__builtin_ia32_roundpd256: + case X86::BI__builtin_ia32_getmantpd128_mask: + case X86::BI__builtin_ia32_getmantpd256_mask: + case X86::BI__builtin_ia32_getmantps128_mask: + case X86::BI__builtin_ia32_getmantps256_mask: + case X86::BI__builtin_ia32_getmantpd512_mask: + case X86::BI__builtin_ia32_getmantps512_mask: case X86::BI__builtin_ia32_vec_ext_v16qi: case X86::BI__builtin_ia32_vec_ext_v16hi: i = 1; l = 0; u = 15; |