x86: optimize EVEX packed integer logical instructions
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / x86-64-optimize-3.s
index d9c2eb86cb92e1371df6ca896dbeaab48ad34786..56bda5cf8779e8c8331a641006c020fba7c2098a 100644 (file)
@@ -126,3 +126,84 @@ _start:
        vmovdqu16       %xmm1, %xmm2{%k1}{z}
        vmovdqu32       %xmm1, %xmm2{%k1}{z}
        vmovdqu64       %xmm1, %xmm2{%k1}{z}
+
+       vpandd          %xmm2, %xmm3, %xmm4
+       vpandq          %xmm12, %xmm3, %xmm4
+       vpandnd         %xmm2, %xmm13, %xmm4
+       vpandnq         %xmm2, %xmm3, %xmm14
+       vpord           %xmm2, %xmm3, %xmm4
+       vporq           %xmm12, %xmm3, %xmm4
+       vpxord          %xmm2, %xmm13, %xmm4
+       vpxorq          %xmm2, %xmm3, %xmm14
+
+       vpandd          %ymm2, %ymm3, %ymm4
+       vpandq          %ymm12, %ymm3, %ymm4
+       vpandnd         %ymm2, %ymm13, %ymm4
+       vpandnq         %ymm2, %ymm3, %ymm14
+       vpord           %ymm2, %ymm3, %ymm4
+       vporq           %ymm12, %ymm3, %ymm4
+       vpxord          %ymm2, %ymm13, %ymm4
+       vpxorq          %ymm2, %ymm3, %ymm14
+
+       vpandd          112(%rax), %xmm2, %xmm3
+       vpandq          112(%rax), %xmm2, %xmm3
+       vpandnd         112(%rax), %xmm2, %xmm3
+       vpandnq         112(%rax), %xmm2, %xmm3
+       vpord           112(%rax), %xmm2, %xmm3
+       vporq           112(%rax), %xmm2, %xmm3
+       vpxord          112(%rax), %xmm2, %xmm3
+       vpxorq          112(%rax), %xmm2, %xmm3
+
+       vpandd          128(%rax), %xmm2, %xmm3
+       vpandq          128(%rax), %xmm2, %xmm3
+       vpandnd         128(%rax), %xmm2, %xmm3
+       vpandnq         128(%rax), %xmm2, %xmm3
+       vpord           128(%rax), %xmm2, %xmm3
+       vporq           128(%rax), %xmm2, %xmm3
+       vpxord          128(%rax), %xmm2, %xmm3
+       vpxorq          128(%rax), %xmm2, %xmm3
+
+       vpandd          96(%rax), %ymm2, %ymm3
+       vpandq          96(%rax), %ymm2, %ymm3
+       vpandnd         96(%rax), %ymm2, %ymm3
+       vpandnq         96(%rax), %ymm2, %ymm3
+       vpord           96(%rax), %ymm2, %ymm3
+       vporq           96(%rax), %ymm2, %ymm3
+       vpxord          96(%rax), %ymm2, %ymm3
+       vpxorq          96(%rax), %ymm2, %ymm3
+
+       vpandd          128(%rax), %ymm2, %ymm3
+       vpandq          128(%rax), %ymm2, %ymm3
+       vpandnd         128(%rax), %ymm2, %ymm3
+       vpandnq         128(%rax), %ymm2, %ymm3
+       vpord           128(%rax), %ymm2, %ymm3
+       vporq           128(%rax), %ymm2, %ymm3
+       vpxord          128(%rax), %ymm2, %ymm3
+       vpxorq          128(%rax), %ymm2, %ymm3
+
+       vpandd          %xmm22, %xmm23, %xmm24
+       vpandq          %ymm22, %ymm3, %ymm4
+       vpandnd         %ymm2, %ymm23, %ymm4
+       vpandnq         %xmm2, %xmm3, %xmm24
+       vpord           %xmm22, %xmm23, %xmm24
+       vporq           %ymm22, %ymm3, %ymm4
+       vpxord          %ymm2, %ymm23, %ymm4
+       vpxorq          %xmm2, %xmm3, %xmm24
+
+       vpandd          %xmm2, %xmm3, %xmm4{%k5}
+       vpandq          %ymm12, %ymm3, %ymm4{%k5}
+       vpandnd         %ymm2, %ymm13, %ymm4{%k5}
+       vpandnq         %xmm2, %xmm3, %xmm14{%k5}
+       vpord           %xmm2, %xmm3, %xmm4{%k5}
+       vporq           %ymm12, %ymm3, %ymm4{%k5}
+       vpxord          %ymm2, %ymm13, %ymm4{%k5}
+       vpxorq          %xmm2, %xmm3, %xmm14{%k5}
+
+       vpandd          (%rax){1to8}, %ymm2, %ymm3
+       vpandq          (%rax){1to2}, %xmm2, %xmm3
+       vpandnd         (%rax){1to4}, %xmm2, %xmm3
+       vpandnq         (%rax){1to4}, %ymm2, %ymm3
+       vpord           (%rax){1to8}, %ymm2, %ymm3
+       vporq           (%rax){1to2}, %xmm2, %xmm3
+       vpxord          (%rax){1to4}, %xmm2, %xmm3
+       vpxorq          (%rax){1to4}, %ymm2, %ymm3
This page took 0.029799 seconds and 4 git commands to generate.