diff --git a/include/llvm/IR/IntrinsicsX86.td b/include/llvm/IR/IntrinsicsX86.td index 65aa88b75c6..1bd2b88ae8c 100644 --- a/include/llvm/IR/IntrinsicsX86.td +++ b/include/llvm/IR/IntrinsicsX86.td @@ -1275,9 +1275,9 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.". // Vector zero let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.". def int_x86_avx_vzeroall : GCCBuiltin<"__builtin_ia32_vzeroall">, - Intrinsic<[], [], []>; + Intrinsic<[], [], [IntrNoMem, IntrHasSideEffects]>; def int_x86_avx_vzeroupper : GCCBuiltin<"__builtin_ia32_vzeroupper">, - Intrinsic<[], [], []>; + Intrinsic<[], [], [IntrNoMem, IntrHasSideEffects]>; } // SIMD load ops diff --git a/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s b/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s index 32fede8d242..daa16fa7d93 100644 --- a/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s +++ b/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 1 7 1.50 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 2 2 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 7 1.50 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 32 90 8.00 * * U vzeroall -# CHECK-NEXT: 16 46 4.00 * * U vzeroupper +# CHECK-NEXT: 32 90 8.00 U vzeroall +# CHECK-NEXT: 16 46 4.00 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0.0] - PdAGLU01 diff --git a/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s b/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s index 4c4acd533f0..748aa541010 100644 --- a/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s +++ b/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 6 1.00 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 7 1.00 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 20 8 1.00 * * U vzeroall -# CHECK-NEXT: 4 0 1.00 * * U vzeroupper +# CHECK-NEXT: 20 8 1.00 U vzeroall +# CHECK-NEXT: 4 0 1.00 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - BWDivider diff --git a/test/tools/llvm-mca/X86/BtVer2/resources-avx1.s b/test/tools/llvm-mca/X86/BtVer2/resources-avx1.s index 4e7a9413aed..636d236678c 100644 --- a/test/tools/llvm-mca/X86/BtVer2/resources-avx1.s +++ b/test/tools/llvm-mca/X86/BtVer2/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 1 6 1.00 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 2 1 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 6 2.00 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 73 90 36.50 * * U vzeroall -# CHECK-NEXT: 37 46 18.50 * * U vzeroupper +# CHECK-NEXT: 73 90 36.50 U vzeroall +# CHECK-NEXT: 37 46 18.50 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - JALU0 diff --git a/test/tools/llvm-mca/X86/Generic/resources-avx1.s b/test/tools/llvm-mca/X86/Generic/resources-avx1.s index 9d66e40a868..e2f8fe2d9f3 100644 --- a/test/tools/llvm-mca/X86/Generic/resources-avx1.s +++ b/test/tools/llvm-mca/X86/Generic/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 7 1.00 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 8 1.00 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 20 9 2.00 * * U vzeroall -# CHECK-NEXT: 4 1 1.00 * * U vzeroupper +# CHECK-NEXT: 20 9 2.00 U vzeroall +# CHECK-NEXT: 4 1 1.00 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider diff --git a/test/tools/llvm-mca/X86/Haswell/resources-avx1.s b/test/tools/llvm-mca/X86/Haswell/resources-avx1.s index 8f1aa7d79e5..8809fd89423 100644 --- a/test/tools/llvm-mca/X86/Haswell/resources-avx1.s +++ b/test/tools/llvm-mca/X86/Haswell/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 7 1.00 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 8 1.00 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 20 8 1.00 * * U vzeroall -# CHECK-NEXT: 4 0 1.00 * * U vzeroupper +# CHECK-NEXT: 20 8 1.00 U vzeroall +# CHECK-NEXT: 4 0 1.00 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - HWDivider diff --git a/test/tools/llvm-mca/X86/SandyBridge/resources-avx1.s b/test/tools/llvm-mca/X86/SandyBridge/resources-avx1.s index d4132e2ab2f..b8c64ce8521 100644 --- a/test/tools/llvm-mca/X86/SandyBridge/resources-avx1.s +++ b/test/tools/llvm-mca/X86/SandyBridge/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 7 1.00 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 1.00 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 8 1.00 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 20 9 2.00 * * U vzeroall -# CHECK-NEXT: 4 1 1.00 * * U vzeroupper +# CHECK-NEXT: 20 9 2.00 U vzeroall +# CHECK-NEXT: 4 1 1.00 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider diff --git a/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s b/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s index 210f18c1323..996ffc7191f 100644 --- a/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s +++ b/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 7 0.50 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 0.33 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 16 16 4.00 * * U vzeroall -# CHECK-NEXT: 4 0 0.67 * * U vzeroupper +# CHECK-NEXT: 16 16 4.00 U vzeroall +# CHECK-NEXT: 4 0 0.67 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - SKLDivider diff --git a/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s b/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s index 5a8671922f6..e1bd834bf44 100644 --- a/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s +++ b/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 2 7 0.50 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 0.33 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 34 12 5.00 * * U vzeroall -# CHECK-NEXT: 4 0 0.67 * * U vzeroupper +# CHECK-NEXT: 34 12 5.00 U vzeroall +# CHECK-NEXT: 4 0 0.67 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - SKXDivider diff --git a/test/tools/llvm-mca/X86/Znver1/resources-avx1.s b/test/tools/llvm-mca/X86/Znver1/resources-avx1.s index 2aeda7f7810..585e257b184 100644 --- a/test/tools/llvm-mca/X86/Znver1/resources-avx1.s +++ b/test/tools/llvm-mca/X86/Znver1/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 1 8 0.50 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 0.25 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 1 8 0.50 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 1 100 0.25 * * U vzeroall -# CHECK-NEXT: 1 100 0.25 * * U vzeroupper +# CHECK-NEXT: 1 100 0.25 U vzeroall +# CHECK-NEXT: 1 100 0.25 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - ZnAGU0 diff --git a/test/tools/llvm-mca/X86/Znver2/resources-avx1.s b/test/tools/llvm-mca/X86/Znver2/resources-avx1.s index 4bbe2cc4ac6..45b48e85f56 100644 --- a/test/tools/llvm-mca/X86/Znver2/resources-avx1.s +++ b/test/tools/llvm-mca/X86/Znver2/resources-avx1.s @@ -1719,8 +1719,8 @@ vzeroupper # CHECK-NEXT: 1 8 0.33 * vxorps (%rax), %xmm1, %xmm2 # CHECK-NEXT: 1 1 0.25 vxorps %ymm0, %ymm1, %ymm2 # CHECK-NEXT: 1 8 0.33 * vxorps (%rax), %ymm1, %ymm2 -# CHECK-NEXT: 1 100 0.25 * * U vzeroall -# CHECK-NEXT: 1 1 0.25 * * U vzeroupper +# CHECK-NEXT: 1 100 0.25 U vzeroall +# CHECK-NEXT: 1 1 0.25 U vzeroupper # CHECK: Resources: # CHECK-NEXT: [0] - Zn2AGU0