From a5ff0eb22b3945e3e4a63b337cbc01bc4aa51d89 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 20 Aug 2008 18:38:40 +0000 Subject: [PATCH] gas/ 2008-08-20 H.J. Lu AVX Programming Reference (August, 2008) * config/tc-i386.c (CPU_FLAGS_AES_MATCH): New. (CPU_FLAGS_AVX_MATCH): Likewise. (CPU_FLAGS_32BIT_MATCH): Updated. (cpu_flags_match): Likewise. gas/testsuite/ 2008-08-20 H.J. Lu AVX Programming Reference (August, 2008) * gas/i386/avx.s: Add AES + AVX tests. * gas/i386/arch-10.s: Likewise. * gas/i386/sse2avx.s: Likewise. * gas/i386/x86-64-arch-2.s: Likewise. * gas/i386/x86-64-avx.s: Likewise. * gas/i386/x86-64-sse2avx.s: Likewise. * gas/i386/arch-10.d: Updated. * gas/i386/arch-10-1.l: Likewise. * gas/i386/arch-10-2.l: Likewise. * gas/i386/arch-10-3.l: Likewise. * gas/i386/arch-10-4.l: Likewise. * gas/i386/avx.d: Likewise. * gas/i386/avx-intel.d: Likewise. * gas/i386/sse2avx.d: Likewise. * gas/i386/x86-64-arch-2.d: Likewise. * gas/i386/x86-64-avx.d: Likewise. * gas/i386/x86-64-avx-intel.d: Likewise. * gas/i386/x86-64-sse2avx.d: Likewise. * gas/i386/i386.exp: Run arch-avx-1, arch-avx-1-1 and arch-avx-1-2. * gas/i386/arch-avx-1.d: New. * gas/i386/arch-avx-1.s: Likewise. * gas/i386/arch-avx-1-1.l: Likewise. * gas/i386/arch-avx-1-1.s: Likewise. * gas/i386/arch-avx-1-2.l: Likewise. * gas/i386/arch-avx-1-2.s: Likewise. opcodes/ 2008-08-20 H.J. Lu AVX Programming Reference (August, 2008) * i386-dis.c (PREFIX_VEX_38DB): New. (PREFIX_VEX_38DC): Likewise. (PREFIX_VEX_38DD): Likewise. (PREFIX_VEX_38DE): Likewise. (PREFIX_VEX_38DF): Likewise. (PREFIX_VEX_3ADF): Likewise. (VEX_LEN_38DB_P_2): Likewise. (VEX_LEN_38DC_P_2): Likewise. (VEX_LEN_38DD_P_2): Likewise. (VEX_LEN_38DE_P_2): Likewise. (VEX_LEN_38DF_P_2): Likewise. (VEX_LEN_3ADF_P_2): Likewise. (PREFIX_VEX_3A04): Updated. (VEX_LEN_3A06_P_2): Likewise. (prefix_table): Add PREFIX_VEX_38DB, PREFIX_VEX_38DC, PREFIX_VEX_38DD, PREFIX_VEX_38DE and PREFIX_VEX_3ADF. (x86_64_table): Likewise. (vex_len_table): Add VEX_LEN_38DB_P_2, VEX_LEN_38DC_P_2, VEX_LEN_38DD_P_2, VEX_LEN_38DE_P_2, VEX_LEN_38DF_P_2 and VEX_LEN_3ADF_P_2. * i386-opc.tbl: Add AES + AVX instructions. * i386-init.h: Regenerated. * i386-tbl.h: Likewise. --- gas/config/tc-i386.c | 26 +++- gas/testsuite/ChangeLog | 33 +++++ gas/testsuite/gas/i386/arch-10-1.l | 43 +++--- gas/testsuite/gas/i386/arch-10-2.l | 43 +++--- gas/testsuite/gas/i386/arch-10-3.l | 43 +++--- gas/testsuite/gas/i386/arch-10-4.l | 43 +++--- gas/testsuite/gas/i386/arch-10.d | 1 + gas/testsuite/gas/i386/arch-10.s | 2 + gas/testsuite/gas/i386/arch-avx-1-1.l | 10 ++ gas/testsuite/gas/i386/arch-avx-1-1.s | 1 + gas/testsuite/gas/i386/arch-avx-1-2.l | 10 ++ gas/testsuite/gas/i386/arch-avx-1-2.s | 1 + gas/testsuite/gas/i386/arch-avx-1.d | 11 ++ gas/testsuite/gas/i386/arch-avx-1.s | 4 + gas/testsuite/gas/i386/avx-intel.d | 51 +++++++ gas/testsuite/gas/i386/avx.d | 51 +++++++ gas/testsuite/gas/i386/avx.s | 51 +++++++ gas/testsuite/gas/i386/i386.exp | 3 + gas/testsuite/gas/i386/sse2avx.d | 20 +++ gas/testsuite/gas/i386/sse2avx.s | 20 +++ gas/testsuite/gas/i386/x86-64-arch-2.d | 1 + gas/testsuite/gas/i386/x86-64-arch-2.s | 2 + gas/testsuite/gas/i386/x86-64-avx-intel.d | 139 ++++++++++++++----- gas/testsuite/gas/i386/x86-64-avx.d | 139 ++++++++++++++----- gas/testsuite/gas/i386/x86-64-avx.s | 63 +++++++++ gas/testsuite/gas/i386/x86-64-sse2avx.d | 20 +++ gas/testsuite/gas/i386/x86-64-sse2avx.s | 20 +++ opcodes/ChangeLog | 28 ++++ opcodes/i386-dis.c | 112 +++++++++++++-- opcodes/i386-opc.tbl | 15 ++ opcodes/i386-tbl.h | 162 ++++++++++++++++++++++ 31 files changed, 1001 insertions(+), 167 deletions(-) create mode 100644 gas/testsuite/gas/i386/arch-avx-1-1.l create mode 100644 gas/testsuite/gas/i386/arch-avx-1-1.s create mode 100644 gas/testsuite/gas/i386/arch-avx-1-2.l create mode 100644 gas/testsuite/gas/i386/arch-avx-1-2.s create mode 100644 gas/testsuite/gas/i386/arch-avx-1.d create mode 100644 gas/testsuite/gas/i386/arch-avx-1.s diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 1e0e717efac..29ad7afa348 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1217,8 +1217,11 @@ cpu_flags_or (i386_cpu_flags x, i386_cpu_flags y) #define CPU_FLAGS_ARCH_MATCH 0x1 #define CPU_FLAGS_64BIT_MATCH 0x2 +#define CPU_FLAGS_AES_MATCH 0x4 +#define CPU_FLAGS_AVX_MATCH 0x8 -#define CPU_FLAGS_32BIT_MATCH CPU_FLAGS_ARCH_MATCH +#define CPU_FLAGS_32BIT_MATCH \ + (CPU_FLAGS_ARCH_MATCH | CPU_FLAGS_AES_MATCH | CPU_FLAGS_AVX_MATCH) #define CPU_FLAGS_PERFECT_MATCH \ (CPU_FLAGS_32BIT_MATCH | CPU_FLAGS_64BIT_MATCH) @@ -1248,8 +1251,25 @@ cpu_flags_match (const template *t) cpu = cpu_flags_and (x, cpu); if (!cpu_flags_all_zero (&cpu)) { - /* Check SSE2AVX */ - if (!t->opcode_modifier.sse2avx || sse2avx) + if (x.bitfield.cpuavx) + { + /* We only need to check AES/SSE2AVX with AVX. */ + if (cpu.bitfield.cpuavx) + { + /* Check SSE2AVX. */ + if (!t->opcode_modifier.sse2avx|| sse2avx) + { + match |= (CPU_FLAGS_ARCH_MATCH + | CPU_FLAGS_AVX_MATCH); + /* Check AES. */ + if (!x.bitfield.cpuaes || cpu.bitfield.cpuaes) + match |= CPU_FLAGS_AES_MATCH; + } + } + else + match |= CPU_FLAGS_ARCH_MATCH; + } + else match |= CPU_FLAGS_32BIT_MATCH; } } diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 3c952648b87..8a44080c7a2 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,36 @@ +2008-08-20 H.J. Lu + + AVX Programming Reference (August, 2008) + * gas/i386/avx.s: Add AES + AVX tests. + * gas/i386/arch-10.s: Likewise. + * gas/i386/sse2avx.s: Likewise. + * gas/i386/x86-64-arch-2.s: Likewise. + * gas/i386/x86-64-avx.s: Likewise. + * gas/i386/x86-64-sse2avx.s: Likewise. + + * gas/i386/arch-10.d: Updated. + * gas/i386/arch-10-1.l: Likewise. + * gas/i386/arch-10-2.l: Likewise. + * gas/i386/arch-10-3.l: Likewise. + * gas/i386/arch-10-4.l: Likewise. + * gas/i386/avx.d: Likewise. + * gas/i386/avx-intel.d: Likewise. + * gas/i386/sse2avx.d: Likewise. + * gas/i386/x86-64-arch-2.d: Likewise. + * gas/i386/x86-64-avx.d: Likewise. + * gas/i386/x86-64-avx-intel.d: Likewise. + * gas/i386/x86-64-sse2avx.d: Likewise. + + * gas/i386/i386.exp: Run arch-avx-1, arch-avx-1-1 and + arch-avx-1-2. + + * gas/i386/arch-avx-1.d: New. + * gas/i386/arch-avx-1.s: Likewise. + * gas/i386/arch-avx-1-1.l: Likewise. + * gas/i386/arch-avx-1-1.s: Likewise. + * gas/i386/arch-avx-1-2.l: Likewise. + * gas/i386/arch-avx-1-2.s: Likewise. + 2008-08-15 Andreas Krebbel * gas/s390/esa-g5.d: lxr operands are floating point. diff --git a/gas/testsuite/gas/i386/arch-10-1.l b/gas/testsuite/gas/i386/arch-10-1.l index 00ce939e6ea..706dbde9fe5 100644 --- a/gas/testsuite/gas/i386/arch-10-1.l +++ b/gas/testsuite/gas/i386/arch-10-1.l @@ -23,6 +23,7 @@ .*:46: Error: .* .*:48: Error: .* .*:50: Error: .* +.*:52: Error: .* GAS LISTING .* @@ -57,23 +58,25 @@ GAS LISTING .* [ ]*28[ ]+aesenc \(%ecx\),%xmm0 [ ]*29[ ]+\# PCLMUL [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 -[ ]*31[ ]+\# FMA -[ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 -[ ]*33[ ]+\# MOVBE -[ ]*34[ ]+movbe \(%ecx\),%ebx -[ ]*35[ ]+\# EPT -[ ]*36[ ]+invept \(%ecx\),%ebx -[ ]*37[ ]+\# 3DNow -[ ]*38[ ]+pmulhrw %mm4,%mm3 -[ ]*39[ ]+\# 3DNow Extensions -[ ]*40[ ]+pswapd %mm4,%mm3 -[ ]*41[ ]+\# SSE4a -[ ]*42[ ]+insertq %xmm2,%xmm1 -[ ]*43[ ]+\# SVME -[ ]*44[ ]+vmload -[ ]*45[ ]+\# ABM -[ ]*46[ ]+lzcnt %ecx,%ebx -[ ]*47[ ]+\# SSE5 -[ ]*48[ ]+frczss %xmm2, %xmm1 -[ ]*49[ ]+\# PadLock -[ ]*50[ ]+xstorerng +[ ]*31[ ]+\# AES \+ AVX +[ ]*32[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 +[ ]*33[ ]+\# FMA +[ ]*34[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 +[ ]*35[ ]+\# MOVBE +[ ]*36[ ]+movbe \(%ecx\),%ebx +[ ]*37[ ]+\# EPT +[ ]*38[ ]+invept \(%ecx\),%ebx +[ ]*39[ ]+\# 3DNow +[ ]*40[ ]+pmulhrw %mm4,%mm3 +[ ]*41[ ]+\# 3DNow Extensions +[ ]*42[ ]+pswapd %mm4,%mm3 +[ ]*43[ ]+\# SSE4a +[ ]*44[ ]+insertq %xmm2,%xmm1 +[ ]*45[ ]+\# SVME +[ ]*46[ ]+vmload +[ ]*47[ ]+\# ABM +[ ]*48[ ]+lzcnt %ecx,%ebx +[ ]*49[ ]+\# SSE5 +[ ]*50[ ]+frczss %xmm2, %xmm1 +[ ]*51[ ]+\# PadLock +[ ]*52[ ]+xstorerng diff --git a/gas/testsuite/gas/i386/arch-10-2.l b/gas/testsuite/gas/i386/arch-10-2.l index dd8650f2cd1..621d06b4520 100644 --- a/gas/testsuite/gas/i386/arch-10-2.l +++ b/gas/testsuite/gas/i386/arch-10-2.l @@ -22,6 +22,7 @@ .*:46: Error: .* .*:48: Error: .* .*:50: Error: .* +.*:52: Error: .* GAS LISTING .* @@ -56,23 +57,25 @@ GAS LISTING .* [ ]*28[ ]+aesenc \(%ecx\),%xmm0 [ ]*29[ ]+\# PCLMUL [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 -[ ]*31[ ]+\# FMA -[ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 -[ ]*33[ ]+\# MOVBE -[ ]*34[ ]+movbe \(%ecx\),%ebx -[ ]*35[ ]+\# EPT -[ ]*36[ ]+invept \(%ecx\),%ebx -[ ]*37[ ]+\# 3DNow -[ ]*38[ ]+pmulhrw %mm4,%mm3 -[ ]*39[ ]+\# 3DNow Extensions -[ ]*40[ ]+pswapd %mm4,%mm3 -[ ]*41[ ]+\# SSE4a -[ ]*42[ ]+insertq %xmm2,%xmm1 -[ ]*43[ ]+\# SVME -[ ]*44[ ]+vmload -[ ]*45[ ]+\# ABM -[ ]*46[ ]+lzcnt %ecx,%ebx -[ ]*47[ ]+\# SSE5 -[ ]*48[ ]+frczss %xmm2, %xmm1 -[ ]*49[ ]+\# PadLock -[ ]*50[ ]+xstorerng +[ ]*31[ ]+\# AES \+ AVX +[ ]*32[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 +[ ]*33[ ]+\# FMA +[ ]*34[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 +[ ]*35[ ]+\# MOVBE +[ ]*36[ ]+movbe \(%ecx\),%ebx +[ ]*37[ ]+\# EPT +[ ]*38[ ]+invept \(%ecx\),%ebx +[ ]*39[ ]+\# 3DNow +[ ]*40[ ]+pmulhrw %mm4,%mm3 +[ ]*41[ ]+\# 3DNow Extensions +[ ]*42[ ]+pswapd %mm4,%mm3 +[ ]*43[ ]+\# SSE4a +[ ]*44[ ]+insertq %xmm2,%xmm1 +[ ]*45[ ]+\# SVME +[ ]*46[ ]+vmload +[ ]*47[ ]+\# ABM +[ ]*48[ ]+lzcnt %ecx,%ebx +[ ]*49[ ]+\# SSE5 +[ ]*50[ ]+frczss %xmm2, %xmm1 +[ ]*51[ ]+\# PadLock +[ ]*52[ ]+xstorerng diff --git a/gas/testsuite/gas/i386/arch-10-3.l b/gas/testsuite/gas/i386/arch-10-3.l index ec53735da7e..8e584877960 100644 --- a/gas/testsuite/gas/i386/arch-10-3.l +++ b/gas/testsuite/gas/i386/arch-10-3.l @@ -15,6 +15,7 @@ .*:46: Error: .* .*:48: Error: .* .*:50: Error: .* +.*:52: Error: .* GAS LISTING .* @@ -52,23 +53,25 @@ GAS LISTING .* [ ]*28[ ]+aesenc \(%ecx\),%xmm0 [ ]*29[ ]+\# PCLMUL [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 -[ ]*31[ ]+\# FMA -[ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 -[ ]*33[ ]+\# MOVBE -[ ]*34[ ]+movbe \(%ecx\),%ebx -[ ]*35[ ]+\# EPT -[ ]*36[ ]+invept \(%ecx\),%ebx -[ ]*37[ ]+\# 3DNow -[ ]*38[ ]+pmulhrw %mm4,%mm3 -[ ]*39[ ]+\# 3DNow Extensions -[ ]*40[ ]+pswapd %mm4,%mm3 -[ ]*41[ ]+\# SSE4a -[ ]*42[ ]+insertq %xmm2,%xmm1 -[ ]*43[ ]+\# SVME -[ ]*44[ ]+vmload -[ ]*45[ ]+\# ABM -[ ]*46[ ]+lzcnt %ecx,%ebx -[ ]*47[ ]+\# SSE5 -[ ]*48[ ]+frczss %xmm2, %xmm1 -[ ]*49[ ]+\# PadLock -[ ]*50[ ]+xstorerng +[ ]*31[ ]+\# AES \+ AVX +[ ]*32[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 +[ ]*33[ ]+\# FMA +[ ]*34[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 +[ ]*35[ ]+\# MOVBE +[ ]*36[ ]+movbe \(%ecx\),%ebx +[ ]*37[ ]+\# EPT +[ ]*38[ ]+invept \(%ecx\),%ebx +[ ]*39[ ]+\# 3DNow +[ ]*40[ ]+pmulhrw %mm4,%mm3 +[ ]*41[ ]+\# 3DNow Extensions +[ ]*42[ ]+pswapd %mm4,%mm3 +[ ]*43[ ]+\# SSE4a +[ ]*44[ ]+insertq %xmm2,%xmm1 +[ ]*45[ ]+\# SVME +[ ]*46[ ]+vmload +[ ]*47[ ]+\# ABM +[ ]*48[ ]+lzcnt %ecx,%ebx +[ ]*49[ ]+\# SSE5 +[ ]*50[ ]+frczss %xmm2, %xmm1 +[ ]*51[ ]+\# PadLock +[ ]*52[ ]+xstorerng diff --git a/gas/testsuite/gas/i386/arch-10-4.l b/gas/testsuite/gas/i386/arch-10-4.l index 10e7db39dae..6356ba10630 100644 --- a/gas/testsuite/gas/i386/arch-10-4.l +++ b/gas/testsuite/gas/i386/arch-10-4.l @@ -13,6 +13,7 @@ .*:46: Error: .* .*:48: Error: .* .*:50: Error: .* +.*:52: Error: .* GAS LISTING .* @@ -50,23 +51,25 @@ GAS LISTING .* [ ]*28[ ]+aesenc \(%ecx\),%xmm0 [ ]*29[ ]+\# PCLMUL [ ]*30[ ]+pclmulqdq \$8,%xmm1,%xmm0 -[ ]*31[ ]+\# FMA -[ ]*32[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 -[ ]*33[ ]+\# MOVBE -[ ]*34[ ]+movbe \(%ecx\),%ebx -[ ]*35[ ]+\# EPT -[ ]*36[ ]+invept \(%ecx\),%ebx -[ ]*37[ ]+\# 3DNow -[ ]*38[ ]+pmulhrw %mm4,%mm3 -[ ]*39[ ]+\# 3DNow Extensions -[ ]*40[ ]+pswapd %mm4,%mm3 -[ ]*41[ ]+\# SSE4a -[ ]*42[ ]+insertq %xmm2,%xmm1 -[ ]*43[ ]+\# SVME -[ ]*44[ ]+vmload -[ ]*45[ ]+\# ABM -[ ]*46[ ]+lzcnt %ecx,%ebx -[ ]*47[ ]+\# SSE5 -[ ]*48[ ]+frczss %xmm2, %xmm1 -[ ]*49[ ]+\# PadLock -[ ]*50[ ]+xstorerng +[ ]*31[ ]+\# AES \+ AVX +[ ]*32[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 +[ ]*33[ ]+\# FMA +[ ]*34[ ]+vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 +[ ]*35[ ]+\# MOVBE +[ ]*36[ ]+movbe \(%ecx\),%ebx +[ ]*37[ ]+\# EPT +[ ]*38[ ]+invept \(%ecx\),%ebx +[ ]*39[ ]+\# 3DNow +[ ]*40[ ]+pmulhrw %mm4,%mm3 +[ ]*41[ ]+\# 3DNow Extensions +[ ]*42[ ]+pswapd %mm4,%mm3 +[ ]*43[ ]+\# SSE4a +[ ]*44[ ]+insertq %xmm2,%xmm1 +[ ]*45[ ]+\# SVME +[ ]*46[ ]+vmload +[ ]*47[ ]+\# ABM +[ ]*48[ ]+lzcnt %ecx,%ebx +[ ]*49[ ]+\# SSE5 +[ ]*50[ ]+frczss %xmm2, %xmm1 +[ ]*51[ ]+\# PadLock +[ ]*52[ ]+xstorerng diff --git a/gas/testsuite/gas/i386/arch-10.d b/gas/testsuite/gas/i386/arch-10.d index 50f046a094f..dc730bda0b1 100644 --- a/gas/testsuite/gas/i386/arch-10.d +++ b/gas/testsuite/gas/i386/arch-10.d @@ -21,6 +21,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 0f 01 d0 xgetbv [ ]*[a-f0-9]+: 66 0f 38 dc 01 aesenc \(%ecx\),%xmm0 [ ]*[a-f0-9]+: 66 0f 3a 44 c1 08 pclmulqdq \$0x8,%xmm1,%xmm0 +[ ]*[a-f0-9]+: c4 e2 79 dc 11 vaesenc \(%ecx\),%xmm0,%xmm2 [ ]*[a-f0-9]+: c4 e3 cd 69 fc 20 vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 [ ]*[a-f0-9]+: 0f 38 f0 19 movbe \(%ecx\),%ebx [ ]*[a-f0-9]+: 66 0f 38 80 19 invept \(%ecx\),%ebx diff --git a/gas/testsuite/gas/i386/arch-10.s b/gas/testsuite/gas/i386/arch-10.s index 08fe0a57721..32954c96e6d 100644 --- a/gas/testsuite/gas/i386/arch-10.s +++ b/gas/testsuite/gas/i386/arch-10.s @@ -28,6 +28,8 @@ xgetbv aesenc (%ecx),%xmm0 # PCLMUL pclmulqdq $8,%xmm1,%xmm0 +# AES + AVX +vaesenc (%ecx),%xmm0,%xmm2 # FMA vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 # MOVBE diff --git a/gas/testsuite/gas/i386/arch-avx-1-1.l b/gas/testsuite/gas/i386/arch-avx-1-1.l new file mode 100644 index 00000000000..b1f8fb08d82 --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1-1.l @@ -0,0 +1,10 @@ +.*: Assembler messages: +.*:4: Error: .* +GAS LISTING .* + + +[ ]*1[ ]+\.include "arch-avx-1\.s" +[ ]*1[ ]+\# Test -march= +[ ]*2[ ]+\.text +[ ]*3[ ]+\# AES \+ AVX +[ ]*4[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 diff --git a/gas/testsuite/gas/i386/arch-avx-1-1.s b/gas/testsuite/gas/i386/arch-avx-1-1.s new file mode 100644 index 00000000000..8c4054839b0 --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1-1.s @@ -0,0 +1 @@ +.include "arch-avx-1.s" diff --git a/gas/testsuite/gas/i386/arch-avx-1-2.l b/gas/testsuite/gas/i386/arch-avx-1-2.l new file mode 100644 index 00000000000..b1f8fb08d82 --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1-2.l @@ -0,0 +1,10 @@ +.*: Assembler messages: +.*:4: Error: .* +GAS LISTING .* + + +[ ]*1[ ]+\.include "arch-avx-1\.s" +[ ]*1[ ]+\# Test -march= +[ ]*2[ ]+\.text +[ ]*3[ ]+\# AES \+ AVX +[ ]*4[ ]+vaesenc \(%ecx\),%xmm0,%xmm2 diff --git a/gas/testsuite/gas/i386/arch-avx-1-2.s b/gas/testsuite/gas/i386/arch-avx-1-2.s new file mode 100644 index 00000000000..8c4054839b0 --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1-2.s @@ -0,0 +1 @@ +.include "arch-avx-1.s" diff --git a/gas/testsuite/gas/i386/arch-avx-1.d b/gas/testsuite/gas/i386/arch-avx-1.d new file mode 100644 index 00000000000..b0af891d7ee --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1.d @@ -0,0 +1,11 @@ +#as: -march=generic32+avx+aes +#objdump: -dw +#name: i386 arch avx 1 + +.*: file format .* + +Disassembly of section .text: + +0+ <.text>: +[ ]*[a-f0-9]+: c4 e2 79 dc 11 vaesenc \(%ecx\),%xmm0,%xmm2 +#pass diff --git a/gas/testsuite/gas/i386/arch-avx-1.s b/gas/testsuite/gas/i386/arch-avx-1.s new file mode 100644 index 00000000000..de77301a30c --- /dev/null +++ b/gas/testsuite/gas/i386/arch-avx-1.s @@ -0,0 +1,4 @@ +# Test -march= + .text +# AES + AVX +vaesenc (%ecx),%xmm0,%xmm2 diff --git a/gas/testsuite/gas/i386/avx-intel.d b/gas/testsuite/gas/i386/avx-intel.d index 990876a8997..ddf6f6e3f70 100644 --- a/gas/testsuite/gas/i386/avx-intel.d +++ b/gas/testsuite/gas/i386/avx-intel.d @@ -375,6 +375,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps xmm6,xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[ecx\],xmm4 [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 @@ -624,6 +626,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 39 vxorpd xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 01 vcmpltpd xmm2,xmm6,xmm4 @@ -754,6 +764,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 c2 39 1f vcmptrue_usps xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps xmm6,xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist xmm6,xmm4,0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[ecx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri xmm6,xmm4,0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[ecx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm xmm6,xmm4,0x64 @@ -1188,6 +1200,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 05 34 12 00 00 vcvtdq2pd ymm0,XMMWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c5 fd 5a 05 34 12 00 00 vcvtpd2ps xmm0,YMMWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c5 f9 e0 3d 34 12 00 00 vpavgb xmm7,xmm0,XMMWORD PTR ds:0x1234 +[ ]*[a-f0-9]+: c4 e3 79 df 05 34 12 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR ds:0x1234,0x64 [ ]*[a-f0-9]+: c4 e3 79 14 05 34 12 00 00 64 vpextrb BYTE PTR ds:0x1234,xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3d 34 12 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c4 e3 59 4a 35 34 12 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR ds:0x1234,xmm0 @@ -1207,6 +1220,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 45 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c5 fd 5a 45 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c5 f9 e0 7d 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+0x0\] +[ ]*[a-f0-9]+: c4 e3 79 df 45 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+0x0\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 45 00 64 vpextrb BYTE PTR \[ebp\+0x0\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 7d 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c4 e3 59 4a 75 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+0x0\],xmm0 @@ -1226,6 +1240,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 24 vcvtdq2pd ymm0,XMMWORD PTR \[esp\] [ ]*[a-f0-9]+: c5 fd 5a 04 24 vcvtpd2ps xmm0,YMMWORD PTR \[esp\] [ ]*[a-f0-9]+: c5 f9 e0 3c 24 vpavgb xmm7,xmm0,XMMWORD PTR \[esp\] +[ ]*[a-f0-9]+: c4 e3 79 df 04 24 64 vaeskeygenassist xmm0,XMMWORD PTR \[esp\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 04 24 64 vpextrb BYTE PTR \[esp\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3c 24 vcvtsi2sd xmm7,xmm0,DWORD PTR \[esp\] [ ]*[a-f0-9]+: c4 e3 59 4a 34 24 00 vblendvps xmm6,xmm4,XMMWORD PTR \[esp\],xmm0 @@ -1245,6 +1260,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 85 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 85 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bd 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 85 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 85 99 00 00 00 64 vpextrb BYTE PTR \[ebp\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bd 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b5 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+0x99\],xmm0 @@ -1264,6 +1280,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 25 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 04 25 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 3c 25 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eiz\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 04 25 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eiz\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 04 25 99 00 00 00 64 vpextrb BYTE PTR \[eiz\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3c 25 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a 34 25 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eiz\*1\+0x99\],xmm0 @@ -1283,6 +1300,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 65 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 04 65 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 3c 65 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eiz\*2\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 04 65 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eiz\*2\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 04 65 99 00 00 00 64 vpextrb BYTE PTR \[eiz\*2\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3c 65 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a 34 65 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eiz\*2\+0x99\],xmm0 @@ -1302,6 +1320,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 20 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 20 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 20 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 20 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 20 99 00 00 00 64 vpextrb BYTE PTR \[eax\+eiz\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 20 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 20 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+eiz\*1\+0x99\],xmm0 @@ -1321,6 +1340,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 60 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 60 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 60 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 60 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 60 99 00 00 00 64 vpextrb BYTE PTR \[eax\+eiz\*2\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 60 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 60 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+eiz\*2\+0x99\],xmm0 @@ -1340,6 +1360,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 98 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 98 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 98 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 98 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 98 99 00 00 00 64 vpextrb BYTE PTR \[eax\+ebx\*4\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 98 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 98 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+ebx\*4\+0x99\],xmm0 @@ -1359,6 +1380,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 cc 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 cc 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc cc 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 cc 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 cc 99 00 00 00 64 vpextrb BYTE PTR \[esp\+ecx\*8\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc cc 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 cc 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[esp\+ecx\*8\+0x99\],xmm0 @@ -1378,6 +1400,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 15 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 15 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 15 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 15 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 15 99 00 00 00 64 vpextrb BYTE PTR \[ebp\+edx\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 15 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 15 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+edx\*1\+0x99\],xmm0 @@ -1939,6 +1962,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps xmm6,xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[ecx\],xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[ecx\],xmm4 @@ -2315,6 +2341,18 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[ecx\] @@ -2511,6 +2549,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps xmm6,xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[ecx\] +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist xmm6,xmm4,0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[ecx\],0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[ecx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri xmm6,xmm4,0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[ecx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[ecx\],0x64 @@ -3169,6 +3210,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 05 34 12 00 00 vcvtdq2pd ymm0,XMMWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c5 fd 5a 05 34 12 00 00 vcvtpd2ps xmm0,YMMWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c5 f9 e0 3d 34 12 00 00 vpavgb xmm7,xmm0,XMMWORD PTR ds:0x1234 +[ ]*[a-f0-9]+: c4 e3 79 df 05 34 12 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR ds:0x1234,0x64 [ ]*[a-f0-9]+: c4 e3 79 14 05 34 12 00 00 64 vpextrb BYTE PTR ds:0x1234,xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3d 34 12 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR ds:0x1234 [ ]*[a-f0-9]+: c4 e3 59 4a 35 34 12 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR ds:0x1234,xmm0 @@ -3188,6 +3230,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 45 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c5 fd 5a 45 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c5 f9 e0 7d 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+0x0\] +[ ]*[a-f0-9]+: c4 e3 79 df 45 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+0x0\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 45 00 64 vpextrb BYTE PTR \[ebp\+0x0\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 7d 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+0x0\] [ ]*[a-f0-9]+: c4 e3 59 4a 75 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+0x0\],xmm0 @@ -3207,6 +3250,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 85 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 85 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bd 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 85 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 85 99 00 00 00 64 vpextrb BYTE PTR \[ebp\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bd 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b5 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+0x99\],xmm0 @@ -3226,6 +3270,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 25 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 04 25 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 3c 25 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eiz\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 04 25 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eiz\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 04 25 99 00 00 00 64 vpextrb BYTE PTR \[eiz\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3c 25 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eiz\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a 34 25 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eiz\*1\+0x99\],xmm0 @@ -3245,6 +3290,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 65 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 04 65 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 3c 65 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eiz\*2\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 04 65 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eiz\*2\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 04 65 99 00 00 00 64 vpextrb BYTE PTR \[eiz\*2\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a 3c 65 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eiz\*2\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a 34 65 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eiz\*2\+0x99\],xmm0 @@ -3264,6 +3310,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 20 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 20 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 20 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 20 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+eiz\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 20 99 00 00 00 64 vpextrb BYTE PTR \[eax\+eiz\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 20 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+eiz\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 20 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+eiz\*1\+0x99\],xmm0 @@ -3283,6 +3330,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 60 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 60 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 60 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 60 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+eiz\*2\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 60 99 00 00 00 64 vpextrb BYTE PTR \[eax\+eiz\*2\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 60 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+eiz\*2\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 60 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+eiz\*2\+0x99\],xmm0 @@ -3302,6 +3350,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 98 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 98 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 98 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 98 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[eax\+ebx\*4\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 98 99 00 00 00 64 vpextrb BYTE PTR \[eax\+ebx\*4\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 98 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[eax\+ebx\*4\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 98 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[eax\+ebx\*4\+0x99\],xmm0 @@ -3321,6 +3370,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 cc 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 cc 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc cc 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 cc 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[esp\+ecx\*8\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 cc 99 00 00 00 64 vpextrb BYTE PTR \[esp\+ecx\*8\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc cc 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[esp\+ecx\*8\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 cc 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[esp\+ecx\*8\+0x99\],xmm0 @@ -3340,6 +3390,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 15 99 00 00 00 vcvtdq2pd ymm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c5 fd 5a 84 15 99 00 00 00 vcvtpd2ps xmm0,YMMWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c5 f9 e0 bc 15 99 00 00 00 vpavgb xmm7,xmm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\] +[ ]*[a-f0-9]+: c4 e3 79 df 84 15 99 00 00 00 64 vaeskeygenassist xmm0,XMMWORD PTR \[ebp\+edx\*1\+0x99\],0x64 [ ]*[a-f0-9]+: c4 e3 79 14 84 15 99 00 00 00 64 vpextrb BYTE PTR \[ebp\+edx\*1\+0x99\],xmm0,0x64 [ ]*[a-f0-9]+: c5 fb 2a bc 15 99 00 00 00 vcvtsi2sd xmm7,xmm0,DWORD PTR \[ebp\+edx\*1\+0x99\] [ ]*[a-f0-9]+: c4 e3 59 4a b4 15 99 00 00 00 00 vblendvps xmm6,xmm4,XMMWORD PTR \[ebp\+edx\*1\+0x99\],xmm0 diff --git a/gas/testsuite/gas/i386/avx.d b/gas/testsuite/gas/i386/avx.d index b284e8bf7ff..57ebb3815ed 100644 --- a/gas/testsuite/gas/i386/avx.d +++ b/gas/testsuite/gas/i386/avx.d @@ -374,6 +374,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%ecx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%ecx\) [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 @@ -623,6 +625,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 39 vxorpd \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 01 vcmpltpd %xmm4,%xmm6,%xmm2 @@ -753,6 +763,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 c2 39 1f vcmptrue_usps \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps \(%ecx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%ecx\),%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm \$0x64,%xmm4,%xmm6 @@ -1187,6 +1199,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 05 34 12 00 00 vcvtdq2pd 0x1234,%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 05 34 12 00 00 vcvtpd2psy 0x1234,%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3d 34 12 00 00 vpavgb 0x1234,%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 05 34 12 00 00 64 vaeskeygenassist \$0x64,0x1234,%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 05 34 12 00 00 64 vpextrb \$0x64,%xmm0,0x1234 [ ]*[a-f0-9]+: c5 fb 2a 3d 34 12 00 00 vcvtsi2sdl 0x1234,%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 35 34 12 00 00 00 vblendvps %xmm0,0x1234,%xmm4,%xmm6 @@ -1206,6 +1219,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 45 00 vcvtdq2pd 0x0\(%ebp\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 45 00 vcvtpd2psy 0x0\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 7d 00 vpavgb 0x0\(%ebp\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 45 00 64 vaeskeygenassist \$0x64,0x0\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 45 00 64 vpextrb \$0x64,%xmm0,0x0\(%ebp\) [ ]*[a-f0-9]+: c5 fb 2a 7d 00 vcvtsi2sdl 0x0\(%ebp\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 75 00 00 vblendvps %xmm0,0x0\(%ebp\),%xmm4,%xmm6 @@ -1225,6 +1239,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 24 vcvtdq2pd \(%esp\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 04 24 vcvtpd2psy \(%esp\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3c 24 vpavgb \(%esp\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 04 24 64 vaeskeygenassist \$0x64,\(%esp\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 04 24 64 vpextrb \$0x64,%xmm0,\(%esp\) [ ]*[a-f0-9]+: c5 fb 2a 3c 24 vcvtsi2sdl \(%esp\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 34 24 00 vblendvps %xmm0,\(%esp\),%xmm4,%xmm6 @@ -1244,6 +1259,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 85 99 00 00 00 vcvtdq2pd 0x99\(%ebp\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 85 99 00 00 00 vcvtpd2psy 0x99\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bd 99 00 00 00 vpavgb 0x99\(%ebp\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 85 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 85 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%ebp\) [ ]*[a-f0-9]+: c5 fb 2a bd 99 00 00 00 vcvtsi2sdl 0x99\(%ebp\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b5 99 00 00 00 00 vblendvps %xmm0,0x99\(%ebp\),%xmm4,%xmm6 @@ -1263,6 +1279,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 25 99 00 00 00 vcvtdq2pd 0x99\(,%eiz,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 04 25 99 00 00 00 vcvtpd2psy 0x99\(,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3c 25 99 00 00 00 vpavgb 0x99\(,%eiz,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 04 25 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 04 25 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(,%eiz,1\) [ ]*[a-f0-9]+: c5 fb 2a 3c 25 99 00 00 00 vcvtsi2sdl 0x99\(,%eiz,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 34 25 99 00 00 00 00 vblendvps %xmm0,0x99\(,%eiz,1\),%xmm4,%xmm6 @@ -1282,6 +1299,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 65 99 00 00 00 vcvtdq2pd 0x99\(,%eiz,2\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 04 65 99 00 00 00 vcvtpd2psy 0x99\(,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3c 65 99 00 00 00 vpavgb 0x99\(,%eiz,2\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 04 65 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 04 65 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(,%eiz,2\) [ ]*[a-f0-9]+: c5 fb 2a 3c 65 99 00 00 00 vcvtsi2sdl 0x99\(,%eiz,2\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 34 65 99 00 00 00 00 vblendvps %xmm0,0x99\(,%eiz,2\),%xmm4,%xmm6 @@ -1301,6 +1319,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 20 99 00 00 00 vcvtdq2pd 0x99\(%eax,%eiz,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 20 99 00 00 00 vcvtpd2psy 0x99\(%eax,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 20 99 00 00 00 vpavgb 0x99\(%eax,%eiz,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 20 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 20 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%eiz,1\) [ ]*[a-f0-9]+: c5 fb 2a bc 20 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%eiz,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 20 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%eiz,1\),%xmm4,%xmm6 @@ -1320,6 +1339,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 60 99 00 00 00 vcvtdq2pd 0x99\(%eax,%eiz,2\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 60 99 00 00 00 vcvtpd2psy 0x99\(%eax,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 60 99 00 00 00 vpavgb 0x99\(%eax,%eiz,2\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 60 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 60 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%eiz,2\) [ ]*[a-f0-9]+: c5 fb 2a bc 60 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%eiz,2\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 60 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%eiz,2\),%xmm4,%xmm6 @@ -1339,6 +1359,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 98 99 00 00 00 vcvtdq2pd 0x99\(%eax,%ebx,4\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 98 99 00 00 00 vcvtpd2psy 0x99\(%eax,%ebx,4\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 98 99 00 00 00 vpavgb 0x99\(%eax,%ebx,4\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 98 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%ebx,4\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 98 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%ebx,4\) [ ]*[a-f0-9]+: c5 fb 2a bc 98 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%ebx,4\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 98 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%ebx,4\),%xmm4,%xmm6 @@ -1358,6 +1379,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 cc 99 00 00 00 vcvtdq2pd 0x99\(%esp,%ecx,8\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 cc 99 00 00 00 vcvtpd2psy 0x99\(%esp,%ecx,8\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc cc 99 00 00 00 vpavgb 0x99\(%esp,%ecx,8\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 cc 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%esp,%ecx,8\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 cc 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%esp,%ecx,8\) [ ]*[a-f0-9]+: c5 fb 2a bc cc 99 00 00 00 vcvtsi2sdl 0x99\(%esp,%ecx,8\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 cc 99 00 00 00 00 vblendvps %xmm0,0x99\(%esp,%ecx,8\),%xmm4,%xmm6 @@ -1377,6 +1399,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 15 99 00 00 00 vcvtdq2pd 0x99\(%ebp,%edx,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 15 99 00 00 00 vcvtpd2psy 0x99\(%ebp,%edx,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 15 99 00 00 00 vpavgb 0x99\(%ebp,%edx,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 15 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%ebp,%edx,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 15 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%ebp,%edx,1\) [ ]*[a-f0-9]+: c5 fb 2a bc 15 99 00 00 00 vcvtsi2sdl 0x99\(%ebp,%edx,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 15 99 00 00 00 00 vblendvps %xmm0,0x99\(%ebp,%edx,1\),%xmm4,%xmm6 @@ -1938,6 +1961,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%ecx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%ecx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%ecx\) [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%ecx\) @@ -2314,6 +2340,18 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%ecx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%ecx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%ecx\),%xmm6,%xmm7 @@ -2510,6 +2548,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps \(%ecx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%ecx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%ecx\),%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%ecx\),%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%ecx\),%xmm6 @@ -3168,6 +3209,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 05 34 12 00 00 vcvtdq2pd 0x1234,%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 05 34 12 00 00 vcvtpd2psy 0x1234,%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3d 34 12 00 00 vpavgb 0x1234,%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 05 34 12 00 00 64 vaeskeygenassist \$0x64,0x1234,%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 05 34 12 00 00 64 vpextrb \$0x64,%xmm0,0x1234 [ ]*[a-f0-9]+: c5 fb 2a 3d 34 12 00 00 vcvtsi2sdl 0x1234,%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 35 34 12 00 00 00 vblendvps %xmm0,0x1234,%xmm4,%xmm6 @@ -3187,6 +3229,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 45 00 vcvtdq2pd 0x0\(%ebp\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 45 00 vcvtpd2psy 0x0\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 7d 00 vpavgb 0x0\(%ebp\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 45 00 64 vaeskeygenassist \$0x64,0x0\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 45 00 64 vpextrb \$0x64,%xmm0,0x0\(%ebp\) [ ]*[a-f0-9]+: c5 fb 2a 7d 00 vcvtsi2sdl 0x0\(%ebp\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 75 00 00 vblendvps %xmm0,0x0\(%ebp\),%xmm4,%xmm6 @@ -3206,6 +3249,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 85 99 00 00 00 vcvtdq2pd 0x99\(%ebp\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 85 99 00 00 00 vcvtpd2psy 0x99\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bd 99 00 00 00 vpavgb 0x99\(%ebp\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 85 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%ebp\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 85 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%ebp\) [ ]*[a-f0-9]+: c5 fb 2a bd 99 00 00 00 vcvtsi2sdl 0x99\(%ebp\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b5 99 00 00 00 00 vblendvps %xmm0,0x99\(%ebp\),%xmm4,%xmm6 @@ -3225,6 +3269,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 25 99 00 00 00 vcvtdq2pd 0x99\(,%eiz,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 04 25 99 00 00 00 vcvtpd2psy 0x99\(,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3c 25 99 00 00 00 vpavgb 0x99\(,%eiz,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 04 25 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 04 25 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(,%eiz,1\) [ ]*[a-f0-9]+: c5 fb 2a 3c 25 99 00 00 00 vcvtsi2sdl 0x99\(,%eiz,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 34 25 99 00 00 00 00 vblendvps %xmm0,0x99\(,%eiz,1\),%xmm4,%xmm6 @@ -3244,6 +3289,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 04 65 99 00 00 00 vcvtdq2pd 0x99\(,%eiz,2\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 04 65 99 00 00 00 vcvtpd2psy 0x99\(,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 3c 65 99 00 00 00 vpavgb 0x99\(,%eiz,2\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 04 65 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 04 65 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(,%eiz,2\) [ ]*[a-f0-9]+: c5 fb 2a 3c 65 99 00 00 00 vcvtsi2sdl 0x99\(,%eiz,2\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a 34 65 99 00 00 00 00 vblendvps %xmm0,0x99\(,%eiz,2\),%xmm4,%xmm6 @@ -3263,6 +3309,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 20 99 00 00 00 vcvtdq2pd 0x99\(%eax,%eiz,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 20 99 00 00 00 vcvtpd2psy 0x99\(%eax,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 20 99 00 00 00 vpavgb 0x99\(%eax,%eiz,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 20 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%eiz,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 20 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%eiz,1\) [ ]*[a-f0-9]+: c5 fb 2a bc 20 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%eiz,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 20 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%eiz,1\),%xmm4,%xmm6 @@ -3282,6 +3329,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 60 99 00 00 00 vcvtdq2pd 0x99\(%eax,%eiz,2\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 60 99 00 00 00 vcvtpd2psy 0x99\(%eax,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 60 99 00 00 00 vpavgb 0x99\(%eax,%eiz,2\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 60 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%eiz,2\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 60 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%eiz,2\) [ ]*[a-f0-9]+: c5 fb 2a bc 60 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%eiz,2\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 60 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%eiz,2\),%xmm4,%xmm6 @@ -3301,6 +3349,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 98 99 00 00 00 vcvtdq2pd 0x99\(%eax,%ebx,4\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 98 99 00 00 00 vcvtpd2psy 0x99\(%eax,%ebx,4\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 98 99 00 00 00 vpavgb 0x99\(%eax,%ebx,4\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 98 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%eax,%ebx,4\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 98 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%eax,%ebx,4\) [ ]*[a-f0-9]+: c5 fb 2a bc 98 99 00 00 00 vcvtsi2sdl 0x99\(%eax,%ebx,4\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 98 99 00 00 00 00 vblendvps %xmm0,0x99\(%eax,%ebx,4\),%xmm4,%xmm6 @@ -3320,6 +3369,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 cc 99 00 00 00 vcvtdq2pd 0x99\(%esp,%ecx,8\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 cc 99 00 00 00 vcvtpd2psy 0x99\(%esp,%ecx,8\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc cc 99 00 00 00 vpavgb 0x99\(%esp,%ecx,8\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 cc 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%esp,%ecx,8\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 cc 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%esp,%ecx,8\) [ ]*[a-f0-9]+: c5 fb 2a bc cc 99 00 00 00 vcvtsi2sdl 0x99\(%esp,%ecx,8\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 cc 99 00 00 00 00 vblendvps %xmm0,0x99\(%esp,%ecx,8\),%xmm4,%xmm6 @@ -3339,6 +3389,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 fe e6 84 15 99 00 00 00 vcvtdq2pd 0x99\(%ebp,%edx,1\),%ymm0 [ ]*[a-f0-9]+: c5 fd 5a 84 15 99 00 00 00 vcvtpd2psy 0x99\(%ebp,%edx,1\),%xmm0 [ ]*[a-f0-9]+: c5 f9 e0 bc 15 99 00 00 00 vpavgb 0x99\(%ebp,%edx,1\),%xmm0,%xmm7 +[ ]*[a-f0-9]+: c4 e3 79 df 84 15 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%ebp,%edx,1\),%xmm0 [ ]*[a-f0-9]+: c4 e3 79 14 84 15 99 00 00 00 64 vpextrb \$0x64,%xmm0,0x99\(%ebp,%edx,1\) [ ]*[a-f0-9]+: c5 fb 2a bc 15 99 00 00 00 vcvtsi2sdl 0x99\(%ebp,%edx,1\),%xmm0,%xmm7 [ ]*[a-f0-9]+: c4 e3 59 4a b4 15 99 00 00 00 00 vblendvps %xmm0,0x99\(%ebp,%edx,1\),%xmm4,%xmm6 diff --git a/gas/testsuite/gas/i386/avx.s b/gas/testsuite/gas/i386/avx.s index 640369f6376..7e78e343ebc 100644 --- a/gas/testsuite/gas/i386/avx.s +++ b/gas/testsuite/gas/i386/avx.s @@ -405,6 +405,8 @@ _start: vsqrtpd (%ecx),%xmm4 vsqrtps %xmm4,%xmm6 vsqrtps (%ecx),%xmm4 + vaesimc %xmm4,%xmm6 + vaesimc (%ecx),%xmm4 # Tests for op xmm, xmm/mem128 vmovapd %xmm4,%xmm6 @@ -664,6 +666,14 @@ _start: vxorpd (%ecx),%xmm6,%xmm7 vxorps %xmm4,%xmm6,%xmm2 vxorps (%ecx),%xmm6,%xmm7 + vaesenc %xmm4,%xmm6,%xmm2 + vaesenc (%ecx),%xmm6,%xmm7 + vaesenclast %xmm4,%xmm6,%xmm2 + vaesenclast (%ecx),%xmm6,%xmm7 + vaesdec %xmm4,%xmm6,%xmm2 + vaesdec (%ecx),%xmm6,%xmm7 + vaesdeclast %xmm4,%xmm6,%xmm2 + vaesdeclast (%ecx),%xmm6,%xmm7 vcmpeqpd %xmm4,%xmm6,%xmm2 vcmpeqpd (%ecx),%xmm6,%xmm7 vcmpltpd %xmm4,%xmm6,%xmm2 @@ -798,6 +808,8 @@ _start: vmaskmovpd (%ecx),%xmm4,%xmm6 # Tests for op imm8, xmm/mem128, xmm + vaeskeygenassist $100,%xmm4,%xmm6 + vaeskeygenassist $100,(%ecx),%xmm6 vpcmpestri $100,%xmm4,%xmm6 vpcmpestri $100,(%ecx),%xmm6 vpcmpestrm $100,%xmm4,%xmm6 @@ -1324,6 +1336,7 @@ _start: vcvtdq2pd 0x1234,%ymm0 vcvtpd2psy 0x1234,%xmm0 vpavgb 0x1234,%xmm0,%xmm7 + vaeskeygenassist $100,0x1234,%xmm0 vpextrb $100,%xmm0,0x1234 vcvtsi2sdl 0x1234,%xmm0,%xmm7 vblendvps %xmm0,0x1234,%xmm4,%xmm6 @@ -1343,6 +1356,7 @@ _start: vcvtdq2pd (%ebp),%ymm0 vcvtpd2psy (%ebp),%xmm0 vpavgb (%ebp),%xmm0,%xmm7 + vaeskeygenassist $100,(%ebp),%xmm0 vpextrb $100,%xmm0,(%ebp) vcvtsi2sdl (%ebp),%xmm0,%xmm7 vblendvps %xmm0,(%ebp),%xmm4,%xmm6 @@ -1362,6 +1376,7 @@ _start: vcvtdq2pd (%esp),%ymm0 vcvtpd2psy (%esp),%xmm0 vpavgb (%esp),%xmm0,%xmm7 + vaeskeygenassist $100,(%esp),%xmm0 vpextrb $100,%xmm0,(%esp) vcvtsi2sdl (%esp),%xmm0,%xmm7 vblendvps %xmm0,(%esp),%xmm4,%xmm6 @@ -1381,6 +1396,7 @@ _start: vcvtdq2pd 0x99(%ebp),%ymm0 vcvtpd2psy 0x99(%ebp),%xmm0 vpavgb 0x99(%ebp),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%ebp),%xmm0 vpextrb $100,%xmm0,0x99(%ebp) vcvtsi2sdl 0x99(%ebp),%xmm0,%xmm7 vblendvps %xmm0,0x99(%ebp),%xmm4,%xmm6 @@ -1400,6 +1416,7 @@ _start: vcvtdq2pd 0x99(,%eiz),%ymm0 vcvtpd2psy 0x99(,%eiz),%xmm0 vpavgb 0x99(,%eiz),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(,%eiz),%xmm0 vpextrb $100,%xmm0,0x99(,%eiz) vcvtsi2sdl 0x99(,%eiz),%xmm0,%xmm7 vblendvps %xmm0,0x99(,%eiz),%xmm4,%xmm6 @@ -1419,6 +1436,7 @@ _start: vcvtdq2pd 0x99(,%eiz,2),%ymm0 vcvtpd2psy 0x99(,%eiz,2),%xmm0 vpavgb 0x99(,%eiz,2),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(,%eiz,2),%xmm0 vpextrb $100,%xmm0,0x99(,%eiz,2) vcvtsi2sdl 0x99(,%eiz,2),%xmm0,%xmm7 vblendvps %xmm0,0x99(,%eiz,2),%xmm4,%xmm6 @@ -1438,6 +1456,7 @@ _start: vcvtdq2pd 0x99(%eax,%eiz),%ymm0 vcvtpd2psy 0x99(%eax,%eiz),%xmm0 vpavgb 0x99(%eax,%eiz),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%eax,%eiz),%xmm0 vpextrb $100,%xmm0,0x99(%eax,%eiz) vcvtsi2sdl 0x99(%eax,%eiz),%xmm0,%xmm7 vblendvps %xmm0,0x99(%eax,%eiz),%xmm4,%xmm6 @@ -1457,6 +1476,7 @@ _start: vcvtdq2pd 0x99(%eax,%eiz,2),%ymm0 vcvtpd2psy 0x99(%eax,%eiz,2),%xmm0 vpavgb 0x99(%eax,%eiz,2),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%eax,%eiz,2),%xmm0 vpextrb $100,%xmm0,0x99(%eax,%eiz,2) vcvtsi2sdl 0x99(%eax,%eiz,2),%xmm0,%xmm7 vblendvps %xmm0,0x99(%eax,%eiz,2),%xmm4,%xmm6 @@ -1476,6 +1496,7 @@ _start: vcvtdq2pd 0x99(%eax,%ebx,4),%ymm0 vcvtpd2psy 0x99(%eax,%ebx,4),%xmm0 vpavgb 0x99(%eax,%ebx,4),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%eax,%ebx,4),%xmm0 vpextrb $100,%xmm0,0x99(%eax,%ebx,4) vcvtsi2sdl 0x99(%eax,%ebx,4),%xmm0,%xmm7 vblendvps %xmm0,0x99(%eax,%ebx,4),%xmm4,%xmm6 @@ -1495,6 +1516,7 @@ _start: vcvtdq2pd 0x99(%esp,%ecx,8),%ymm0 vcvtpd2psy 0x99(%esp,%ecx,8),%xmm0 vpavgb 0x99(%esp,%ecx,8),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%esp,%ecx,8),%xmm0 vpextrb $100,%xmm0,0x99(%esp,%ecx,8) vcvtsi2sdl 0x99(%esp,%ecx,8),%xmm0,%xmm7 vblendvps %xmm0,0x99(%esp,%ecx,8),%xmm4,%xmm6 @@ -1514,6 +1536,7 @@ _start: vcvtdq2pd 0x99(%ebp,%edx,1),%ymm0 vcvtpd2psy 0x99(%ebp,%edx,1),%xmm0 vpavgb 0x99(%ebp,%edx,1),%xmm0,%xmm7 + vaeskeygenassist $100,0x99(%ebp,%edx,1),%xmm0 vpextrb $100,%xmm0,0x99(%ebp,%edx,1) vcvtsi2sdl 0x99(%ebp,%edx,1),%xmm0,%xmm7 vblendvps %xmm0,0x99(%ebp,%edx,1),%xmm4,%xmm6 @@ -2110,6 +2133,9 @@ _start: vsqrtps xmm6,xmm4 vsqrtps xmm4,XMMWORD PTR [ecx] vsqrtps xmm4,[ecx] + vaesimc xmm6,xmm4 + vaesimc xmm4,XMMWORD PTR [ecx] + vaesimc xmm4,[ecx] # Tests for op xmm, xmm/mem128 vmovapd xmm6,xmm4 @@ -2496,6 +2522,18 @@ _start: vxorps xmm2,xmm6,xmm4 vxorps xmm7,xmm6,XMMWORD PTR [ecx] vxorps xmm7,xmm6,[ecx] + vaesenc xmm2,xmm6,xmm4 + vaesenc xmm7,xmm6,XMMWORD PTR [ecx] + vaesenc xmm7,xmm6,[ecx] + vaesenclast xmm2,xmm6,xmm4 + vaesenclast xmm7,xmm6,XMMWORD PTR [ecx] + vaesenclast xmm7,xmm6,[ecx] + vaesdec xmm2,xmm6,xmm4 + vaesdec xmm7,xmm6,XMMWORD PTR [ecx] + vaesdec xmm7,xmm6,[ecx] + vaesdeclast xmm2,xmm6,xmm4 + vaesdeclast xmm7,xmm6,XMMWORD PTR [ecx] + vaesdeclast xmm7,xmm6,[ecx] vcmpeqpd xmm2,xmm6,xmm4 vcmpeqpd xmm7,xmm6,XMMWORD PTR [ecx] vcmpeqpd xmm7,xmm6,[ecx] @@ -2696,6 +2734,9 @@ _start: vmaskmovpd xmm6,xmm4,[ecx] # Tests for op imm8, xmm/mem128, xmm + vaeskeygenassist xmm6,xmm4,100 + vaeskeygenassist xmm6,XMMWORD PTR [ecx],100 + vaeskeygenassist xmm6,[ecx],100 vpcmpestri xmm6,xmm4,100 vpcmpestri xmm6,XMMWORD PTR [ecx],100 vpcmpestri xmm6,[ecx],100 @@ -3446,6 +3487,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR ds:0x1234 vcvtpd2ps xmm0,YMMWORD PTR ds:0x1234 vpavgb xmm7,xmm0,XMMWORD PTR ds:0x1234 + vaeskeygenassist xmm0,XMMWORD PTR ds:0x1234,100 vpextrb ds:0x1234,xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR ds:0x1234 vblendvps xmm6,xmm4,XMMWORD PTR ds:0x1234,xmm0 @@ -3465,6 +3507,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [ebp] vcvtpd2ps xmm0,YMMWORD PTR [ebp] vpavgb xmm7,xmm0,XMMWORD PTR [ebp] + vaeskeygenassist xmm0,XMMWORD PTR [ebp],100 vpextrb [ebp],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [ebp] vblendvps xmm6,xmm4,XMMWORD PTR [ebp],xmm0 @@ -3484,6 +3527,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [ebp+0x99] vcvtpd2ps xmm0,YMMWORD PTR [ebp+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [ebp+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [ebp+0x99],100 vpextrb [ebp+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [ebp+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [ebp+0x99],xmm0 @@ -3503,6 +3547,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [eiz*1+0x99] vcvtpd2ps xmm0,YMMWORD PTR [eiz*1+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [eiz*1+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [eiz*1+0x99],100 vpextrb [eiz*1+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [eiz*1+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [eiz*1+0x99],xmm0 @@ -3522,6 +3567,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [eiz*2+0x99] vcvtpd2ps xmm0,YMMWORD PTR [eiz*2+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [eiz*2+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [eiz*2+0x99],100 vpextrb [eiz*2+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [eiz*2+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [eiz*2+0x99],xmm0 @@ -3541,6 +3587,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [eax+eiz*1+0x99] vcvtpd2ps xmm0,YMMWORD PTR [eax+eiz*1+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [eax+eiz*1+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [eax+eiz*1+0x99],100 vpextrb [eax+eiz*1+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [eax+eiz*1+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [eax+eiz*1+0x99],xmm0 @@ -3560,6 +3607,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [eax+eiz*2+0x99] vcvtpd2ps xmm0,YMMWORD PTR [eax+eiz*2+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [eax+eiz*2+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [eax+eiz*2+0x99],100 vpextrb [eax+eiz*2+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [eax+eiz*2+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [eax+eiz*2+0x99],xmm0 @@ -3579,6 +3627,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [eax+ebx*4+0x99] vcvtpd2ps xmm0,YMMWORD PTR [eax+ebx*4+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [eax+ebx*4+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [eax+ebx*4+0x99],100 vpextrb [eax+ebx*4+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [eax+ebx*4+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [eax+ebx*4+0x99],xmm0 @@ -3598,6 +3647,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [esp+ecx*8+0x99] vcvtpd2ps xmm0,YMMWORD PTR [esp+ecx*8+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [esp+ecx*8+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [esp+ecx*8+0x99],100 vpextrb [esp+ecx*8+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [esp+ecx*8+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [esp+ecx*8+0x99],xmm0 @@ -3617,6 +3667,7 @@ _start: vcvtdq2pd ymm0,XMMWORD PTR [ebp+edx*1+0x99] vcvtpd2ps xmm0,YMMWORD PTR [ebp+edx*1+0x99] vpavgb xmm7,xmm0,XMMWORD PTR [ebp+edx*1+0x99] + vaeskeygenassist xmm0,XMMWORD PTR [ebp+edx*1+0x99],100 vpextrb [ebp+edx*1+0x99],xmm0,100 vcvtsi2sd xmm7,xmm0,DWORD PTR [ebp+edx*1+0x99] vblendvps xmm6,xmm4,XMMWORD PTR [ebp+edx*1+0x99],xmm0 diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index a11598f09be..fde61bdb244 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -135,6 +135,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_dump_test "ept" run_dump_test "ept-intel" run_list_test "inval-ept" "-al" + run_dump_test "arch-avx-1" + run_list_test "arch-avx-1-1" "-march=generic32+avx -I${srcdir}/$subdir -al" + run_list_test "arch-avx-1-2" "-march=generic32+aes -I${srcdir}/$subdir -al" # These tests require support for 8 and 16 bit relocs, # so we only run them for ELF and COFF targets. diff --git a/gas/testsuite/gas/i386/sse2avx.d b/gas/testsuite/gas/i386/sse2avx.d index ecca20e5b6e..f573f57b5dc 100644 --- a/gas/testsuite/gas/i386/sse2avx.d +++ b/gas/testsuite/gas/i386/sse2avx.d @@ -55,6 +55,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%ecx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%ecx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%ecx\) [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 @@ -148,6 +150,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 e0 31 vpavgb \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 e3 f4 vpavgw %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 e3 31 vpavgw \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 00 pclmullqlqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 00 pclmullqlqdq \(%ecx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 01 pclmulhqlqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 01 pclmulhqlqdq \(%ecx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 10 pclmullqhqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 10 pclmullqhqdq \(%ecx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 11 pclmulhqhqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 11 pclmulhqhqdq \(%ecx\),%xmm6 [ ]*[a-f0-9]+: c5 c9 74 f4 vpcmpeqb %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 74 31 vpcmpeqb \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 75 f4 vpcmpeqw %xmm4,%xmm6,%xmm6 @@ -296,6 +306,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 31 vxorpd \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 57 f4 vxorps %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 57 31 vxorps \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dc f4 vaesenc %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dc 31 vaesenc \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dd f4 vaesenclast %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dd 31 vaesenclast \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 de f4 vaesdec %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 de 31 vaesdec \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 df f4 vaesdeclast %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 df 31 vaesdeclast \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 c2 f4 00 vcmpeqpd %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 c2 31 00 vcmpeqpd \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 f4 00 vcmpeqps %xmm4,%xmm6,%xmm6 @@ -328,6 +346,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 c2 31 07 vcmpordpd \(%ecx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 f4 07 vcmpordps %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 31 07 vcmpordps \(%ecx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%ecx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm \$0x64,%xmm4,%xmm6 diff --git a/gas/testsuite/gas/i386/sse2avx.s b/gas/testsuite/gas/i386/sse2avx.s index 1dccd9481de..3a48b214632 100644 --- a/gas/testsuite/gas/i386/sse2avx.s +++ b/gas/testsuite/gas/i386/sse2avx.s @@ -54,6 +54,8 @@ _start: sqrtpd (%ecx),%xmm4 sqrtps %xmm4,%xmm6 sqrtps (%ecx),%xmm4 + aesimc %xmm4,%xmm6 + aesimc (%ecx),%xmm4 # Tests for op xmm, xmm/mem128 movapd %xmm4,%xmm6 @@ -155,6 +157,14 @@ _start: pavgb (%ecx),%xmm6 pavgw %xmm4,%xmm6 pavgw (%ecx),%xmm6 + pclmullqlqdq %xmm4,%xmm6 + pclmullqlqdq (%ecx),%xmm6 + pclmulhqlqdq %xmm4,%xmm6 + pclmulhqlqdq (%ecx),%xmm6 + pclmullqhqdq %xmm4,%xmm6 + pclmullqhqdq (%ecx),%xmm6 + pclmulhqhqdq %xmm4,%xmm6 + pclmulhqhqdq (%ecx),%xmm6 pcmpeqb %xmm4,%xmm6 pcmpeqb (%ecx),%xmm6 pcmpeqw %xmm4,%xmm6 @@ -303,6 +313,14 @@ _start: xorpd (%ecx),%xmm6 xorps %xmm4,%xmm6 xorps (%ecx),%xmm6 + aesenc %xmm4,%xmm6 + aesenc (%ecx),%xmm6 + aesenclast %xmm4,%xmm6 + aesenclast (%ecx),%xmm6 + aesdec %xmm4,%xmm6 + aesdec (%ecx),%xmm6 + aesdeclast %xmm4,%xmm6 + aesdeclast (%ecx),%xmm6 cmpeqpd %xmm4,%xmm6 cmpeqpd (%ecx),%xmm6 cmpeqps %xmm4,%xmm6 @@ -337,6 +355,8 @@ _start: cmpordps (%ecx),%xmm6 # Tests for op imm8, xmm/mem128, xmm + aeskeygenassist $100,%xmm4,%xmm6 + aeskeygenassist $100,(%ecx),%xmm6 pcmpestri $100,%xmm4,%xmm6 pcmpestri $100,(%ecx),%xmm6 pcmpestrm $100,%xmm4,%xmm6 diff --git a/gas/testsuite/gas/i386/x86-64-arch-2.d b/gas/testsuite/gas/i386/x86-64-arch-2.d index 9bdd5bbe6c9..84ce1007845 100644 --- a/gas/testsuite/gas/i386/x86-64-arch-2.d +++ b/gas/testsuite/gas/i386/x86-64-arch-2.d @@ -21,6 +21,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 0f 01 d0 xgetbv [ ]*[a-f0-9]+: 66 0f 38 dc 01 aesenc \(%rcx\),%xmm0 [ ]*[a-f0-9]+: 66 0f 3a 44 c1 08 pclmulqdq \$0x8,%xmm1,%xmm0 +[ ]*[a-f0-9]+: c4 e2 79 dc 11 vaesenc \(%rcx\),%xmm0,%xmm2 [ ]*[a-f0-9]+: c4 e3 cd 69 fc 20 vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 [ ]*[a-f0-9]+: 0f 38 f0 19 movbe \(%rcx\),%ebx [ ]*[a-f0-9]+: 66 0f 38 80 19 invept \(%rcx\),%rbx diff --git a/gas/testsuite/gas/i386/x86-64-arch-2.s b/gas/testsuite/gas/i386/x86-64-arch-2.s index 0cabf724f47..bbe34cb27ad 100644 --- a/gas/testsuite/gas/i386/x86-64-arch-2.s +++ b/gas/testsuite/gas/i386/x86-64-arch-2.s @@ -28,6 +28,8 @@ xgetbv aesenc (%rcx),%xmm0 # PCLMUL pclmulqdq $8,%xmm1,%xmm0 +# AES + AVX +vaesenc (%rcx),%xmm0,%xmm2 # FMA vfmaddpd %ymm4,%ymm6,%ymm2,%ymm7 # MOVBE diff --git a/gas/testsuite/gas/i386/x86-64-avx-intel.d b/gas/testsuite/gas/i386/x86-64-avx-intel.d index 88ad49fa974..e9de6bfb5b5 100644 --- a/gas/testsuite/gas/i386/x86-64-avx-intel.d +++ b/gas/testsuite/gas/i386/x86-64-avx-intel.d @@ -375,6 +375,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps xmm6,xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[rcx\],xmm4 [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps xmm6,xmm4 @@ -624,6 +626,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 39 vxorpd xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 01 vcmpltpd xmm2,xmm6,xmm4 @@ -754,6 +764,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 c2 39 1f vcmptrue_usps xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps xmm6,xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist xmm6,xmm4,0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[rcx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri xmm6,xmm4,0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[rcx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm xmm6,xmm4,0x64 @@ -1219,6 +1231,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 78 56 34 12 vcvtdq2pd ymm8,XMMWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c5 7d 5a 04 25 78 56 34 12 vcvtpd2ps xmm8,YMMWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c5 39 e0 3c 25 78 56 34 12 vpavgb xmm15,xmm8,XMMWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 78 56 34 12 64 vaeskeygenassist xmm8,XMMWORD PTR ds:0x12345678,0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 25 78 56 34 12 64 vpextrb BYTE PTR ds:0x12345678,xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 78 56 34 12 vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 78 56 34 12 80 vblendvps xmm14,xmm12,XMMWORD PTR ds:0x12345678,xmm8 @@ -1238,6 +1251,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 45 00 vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c5 7d 5a 45 00 vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c5 39 e0 7d 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+0x0\] +[ ]*[a-f0-9]+: c4 63 79 df 45 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+0x0\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 45 00 64 vpextrb BYTE PTR \[rbp\+0x0\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 7d 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c4 63 19 4a 75 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+0x0\],xmm8 @@ -1257,6 +1271,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 24 vcvtdq2pd ymm8,XMMWORD PTR \[rsp\] [ ]*[a-f0-9]+: c5 7d 5a 04 24 vcvtpd2ps xmm8,YMMWORD PTR \[rsp\] [ ]*[a-f0-9]+: c5 39 e0 3c 24 vpavgb xmm15,xmm8,XMMWORD PTR \[rsp\] +[ ]*[a-f0-9]+: c4 63 79 df 04 24 64 vaeskeygenassist xmm8,XMMWORD PTR \[rsp\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 24 64 vpextrb BYTE PTR \[rsp\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 24 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rsp\] [ ]*[a-f0-9]+: c4 63 19 4a 34 24 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rsp\],xmm8 @@ -1276,6 +1291,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 85 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c5 7d 5a 85 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c5 39 e0 bd 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 85 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 85 99 00 00 00 64 vpextrb BYTE PTR \[rbp\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bd 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b5 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+0x99\],xmm8 @@ -1295,6 +1311,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 87 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 41 7d 5a 87 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 41 39 e0 bf 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[r15\+0x99\] +[ ]*[a-f0-9]+: c4 43 79 df 87 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[r15\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 79 14 87 99 00 00 00 64 vpextrb BYTE PTR \[r15\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a bf 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 43 19 4a b7 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r15\+0x99\],xmm8 @@ -1306,25 +1323,26 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 43 7d 19 87 99 00 00 00 64 vextractf128 XMMWORD PTR \[r15\+0x99\],ymm8,0x64 [ ]*[a-f0-9]+: c4 43 3d 06 bf 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[r15\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 1d 4b b7 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[r15\+0x99\],ymm8 -[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr DWORD PTR \[rip\+0x99\] # 1a31 <_start\+0x1a31> -[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rip\+0x99\] # 1a39 <_start\+0x1a39> -[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa XMMWORD PTR \[rip\+0x99\],xmm8 # 1a41 <_start\+0x1a41> -[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd DWORD PTR \[rip\+0x99\],xmm8 # 1a49 <_start\+0x1a49> -[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si r8d,QWORD PTR \[rip\+0x99\] # 1a51 <_start\+0x1a51> -[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rip\+0x99\] # 1a59 <_start\+0x1a59> -[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rip\+0x99\] # 1a61 <_start\+0x1a61> -[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rip\+0x99\] # 1a69 <_start\+0x1a69> -[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb BYTE PTR \[rip\+0x99\],xmm8,0x64 # 1a73 <_start\+0x1a73> -[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rip\+0x99\] # 1a7b <_start\+0x1a7b> -[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rip\+0x99\],xmm8 # 1a85 <_start\+0x1a85> -[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb xmm15,xmm8,BYTE PTR \[rip\+0x99\],0x64 # 1a8f <_start\+0x1a8f> -[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa ymm8,YMMWORD PTR \[rip\+0x99\] # 1a97 <_start\+0x1a97> -[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa YMMWORD PTR \[rip\+0x99\],ymm8 # 1a9f <_start\+0x1a9f> -[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd ymm15,ymm8,YMMWORD PTR \[rip\+0x99\] # 1aa8 <_start\+0x1aa8> -[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 1ab2 <_start\+0x1ab2> -[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 XMMWORD PTR \[rip\+0x99\],ymm8,0x64 # 1abc <_start\+0x1abc> -[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 1ac6 <_start\+0x1ac6> -[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[rip\+0x99\],ymm8 # 1ad0 <_start\+0x1ad0> +[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr DWORD PTR \[rip\+0x99\] # 1a9c <_start\+0x1a9c> +[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rip\+0x99\] # 1aa4 <_start\+0x1aa4> +[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa XMMWORD PTR \[rip\+0x99\],xmm8 # 1aac <_start\+0x1aac> +[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd DWORD PTR \[rip\+0x99\],xmm8 # 1ab4 <_start\+0x1ab4> +[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si r8d,QWORD PTR \[rip\+0x99\] # 1abc <_start\+0x1abc> +[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rip\+0x99\] # 1ac4 <_start\+0x1ac4> +[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rip\+0x99\] # 1acc <_start\+0x1acc> +[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rip\+0x99\] # 1ad4 <_start\+0x1ad4> +[ ]*[a-f0-9]+: c4 63 79 df 05 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rip\+0x99\],0x64 # 1ade <_start\+0x1ade> +[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb BYTE PTR \[rip\+0x99\],xmm8,0x64 # 1ae8 <_start\+0x1ae8> +[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rip\+0x99\] # 1af0 <_start\+0x1af0> +[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rip\+0x99\],xmm8 # 1afa <_start\+0x1afa> +[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb xmm15,xmm8,BYTE PTR \[rip\+0x99\],0x64 # 1b04 <_start\+0x1b04> +[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa ymm8,YMMWORD PTR \[rip\+0x99\] # 1b0c <_start\+0x1b0c> +[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa YMMWORD PTR \[rip\+0x99\],ymm8 # 1b14 <_start\+0x1b14> +[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd ymm15,ymm8,YMMWORD PTR \[rip\+0x99\] # 1b1d <_start\+0x1b1d> +[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 1b27 <_start\+0x1b27> +[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 XMMWORD PTR \[rip\+0x99\],ymm8,0x64 # 1b31 <_start\+0x1b31> +[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 1b3b <_start\+0x1b3b> +[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[rip\+0x99\],ymm8 # 1b45 <_start\+0x1b45> [ ]*[a-f0-9]+: c5 f8 ae 94 24 99 00 00 00 vldmxcsr DWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 79 6f 84 24 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 79 7f 84 24 99 00 00 00 vmovdqa XMMWORD PTR \[rsp\+0x99\],xmm8 @@ -1333,6 +1351,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 24 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 24 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 24 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rsp\+0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 24 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rsp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 24 99 00 00 00 64 vpextrb BYTE PTR \[rsp\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 24 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 24 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rsp\+0x99\],xmm8 @@ -1352,6 +1371,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 84 24 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 41 7d 5a 84 24 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 41 39 e0 bc 24 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[r12\+0x99\] +[ ]*[a-f0-9]+: c4 43 79 df 84 24 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[r12\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 79 14 84 24 99 00 00 00 64 vpextrb BYTE PTR \[r12\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a bc 24 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 43 19 4a b4 24 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r12\+0x99\],xmm8 @@ -1371,6 +1391,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c5 7d 5a 04 25 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c5 39 e0 3c 25 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR ds:0xffffffffffffff67 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR ds:0xffffffffffffff67,0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 25 67 ff ff ff 64 vpextrb BYTE PTR ds:0xffffffffffffff67,xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR ds:0xffffffffffffff67,xmm8 @@ -1390,6 +1411,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 65 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 04 65 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c5 39 e0 3c 65 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[riz\*2-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 04 65 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[riz\*2-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 65 67 ff ff ff 64 vpextrb BYTE PTR \[riz\*2-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 65 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a 34 65 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[riz\*2-0x99\],xmm8 @@ -1409,6 +1431,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 23 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 23 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 23 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbx\+riz\*1-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 23 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbx\+riz\*1-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 23 67 ff ff ff 64 vpextrb BYTE PTR \[rbx\+riz\*1-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 23 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 23 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbx\+riz\*1-0x99\],xmm8 @@ -1428,6 +1451,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 63 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 63 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 63 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbx\+riz\*2-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 63 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbx\+riz\*2-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 63 67 ff ff ff 64 vpextrb BYTE PTR \[rbx\+riz\*2-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 63 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 63 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbx\+riz\*2-0x99\],xmm8 @@ -1447,6 +1471,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 bc 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 01 7d 5a 84 bc 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 01 39 e0 bc bc 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[r12\+r15\*4-0x99\] +[ ]*[a-f0-9]+: c4 03 79 df 84 bc 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[r12\+r15\*4-0x99\],0x64 [ ]*[a-f0-9]+: c4 03 79 14 84 bc 67 ff ff ff 64 vpextrb BYTE PTR \[r12\+r15\*4-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 01 3b 2a bc bc 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 03 19 4a b4 bc 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r12\+r15\*4-0x99\],xmm8 @@ -1466,6 +1491,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 f8 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 01 7d 5a 84 f8 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 01 39 e0 bc f8 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[r8\+r15\*8-0x99\] +[ ]*[a-f0-9]+: c4 03 79 df 84 f8 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[r8\+r15\*8-0x99\],0x64 [ ]*[a-f0-9]+: c4 03 79 14 84 f8 67 ff ff ff 64 vpextrb BYTE PTR \[r8\+r15\*8-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 01 3b 2a bc f8 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 03 19 4a b4 f8 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r8\+r15\*8-0x99\],xmm8 @@ -1485,6 +1511,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 ad 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+r13\*4-0x99\] [ ]*[a-f0-9]+: c4 21 7d 5a 84 ad 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+r13\*4-0x99\] [ ]*[a-f0-9]+: c4 21 39 e0 bc ad 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+r13\*4-0x99\] +[ ]*[a-f0-9]+: c4 23 79 df 84 ad 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+r13\*4-0x99\],0x64 [ ]*[a-f0-9]+: c4 23 79 14 84 ad 67 ff ff ff 64 vpextrb BYTE PTR \[rbp\+r13\*4-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 21 3b 2a bc ad 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+r13\*4-0x99\] [ ]*[a-f0-9]+: c4 23 19 4a b4 ad 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+r13\*4-0x99\],xmm8 @@ -1504,6 +1531,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 24 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rsp\+r12\*1-0x99\] [ ]*[a-f0-9]+: c4 21 7d 5a 84 24 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rsp\+r12\*1-0x99\] [ ]*[a-f0-9]+: c4 21 39 e0 bc 24 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rsp\+r12\*1-0x99\] +[ ]*[a-f0-9]+: c4 23 79 df 84 24 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rsp\+r12\*1-0x99\],0x64 [ ]*[a-f0-9]+: c4 23 79 14 84 24 67 ff ff ff 64 vpextrb BYTE PTR \[rsp\+r12\*1-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 21 3b 2a bc 24 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rsp\+r12\*1-0x99\] [ ]*[a-f0-9]+: c4 23 19 4a b4 24 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rsp\+r12\*1-0x99\],xmm8 @@ -1523,6 +1551,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7b 2d c0 vcvtsd2si r8d,xmm8 [ ]*[a-f0-9]+: c4 41 7e e6 c0 vcvtdq2pd ymm8,xmm8 [ ]*[a-f0-9]+: c4 41 7d 5a c0 vcvtpd2ps xmm8,ymm8 +[ ]*[a-f0-9]+: c4 43 79 df f8 64 vaeskeygenassist xmm15,xmm8,0x64 [ ]*[a-f0-9]+: c4 43 79 14 c0 64 vpextrb r8d,xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a f8 vcvtsi2sd xmm15,xmm8,r8d [ ]*[a-f0-9]+: c4 43 19 4a f0 80 vblendvps xmm14,xmm12,xmm8,xmm8 @@ -2085,6 +2114,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps xmm6,xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps xmm4,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd xmm6,xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[rcx\],xmm4 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd XMMWORD PTR \[rcx\],xmm4 @@ -2461,6 +2493,18 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c8 57 39 vxorps xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast xmm2,xmm6,xmm4 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd xmm7,xmm6,XMMWORD PTR \[rcx\] @@ -2657,6 +2701,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps xmm6,xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd xmm6,xmm4,XMMWORD PTR \[rcx\] +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist xmm6,xmm4,0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[rcx\],0x64 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist xmm6,XMMWORD PTR \[rcx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri xmm6,xmm4,0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[rcx\],0x64 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri xmm6,XMMWORD PTR \[rcx\],0x64 @@ -3355,6 +3402,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 78 56 34 12 vcvtdq2pd ymm8,XMMWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c5 7d 5a 04 25 78 56 34 12 vcvtpd2ps xmm8,YMMWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c5 39 e0 3c 25 78 56 34 12 vpavgb xmm15,xmm8,XMMWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 78 56 34 12 64 vaeskeygenassist xmm8,XMMWORD PTR ds:0x12345678,0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 25 78 56 34 12 64 vpextrb BYTE PTR ds:0x12345678,xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 78 56 34 12 vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0x12345678 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 78 56 34 12 80 vblendvps xmm14,xmm12,XMMWORD PTR ds:0x12345678,xmm8 @@ -3374,6 +3422,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 45 00 vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c5 7d 5a 45 00 vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c5 39 e0 7d 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+0x0\] +[ ]*[a-f0-9]+: c4 63 79 df 45 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+0x0\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 45 00 64 vpextrb BYTE PTR \[rbp\+0x0\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 7d 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+0x0\] [ ]*[a-f0-9]+: c4 63 19 4a 75 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+0x0\],xmm8 @@ -3393,6 +3442,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 85 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c5 7d 5a 85 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c5 39 e0 bd 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 85 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 85 99 00 00 00 64 vpextrb BYTE PTR \[rbp\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bd 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b5 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+0x99\],xmm8 @@ -3412,6 +3462,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 87 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 41 7d 5a 87 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 41 39 e0 bf 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[r15\+0x99\] +[ ]*[a-f0-9]+: c4 43 79 df 87 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[r15\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 79 14 87 99 00 00 00 64 vpextrb BYTE PTR \[r15\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a bf 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[r15\+0x99\] [ ]*[a-f0-9]+: c4 43 19 4a b7 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r15\+0x99\],xmm8 @@ -3423,25 +3474,26 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 43 7d 19 87 99 00 00 00 64 vextractf128 XMMWORD PTR \[r15\+0x99\],ymm8,0x64 [ ]*[a-f0-9]+: c4 43 3d 06 bf 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[r15\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 1d 4b b7 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[r15\+0x99\],ymm8 -[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr DWORD PTR \[rip\+0x99\] # 476e <_start\+0x476e> -[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rip\+0x99\] # 4776 <_start\+0x4776> -[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa XMMWORD PTR \[rip\+0x99\],xmm8 # 477e <_start\+0x477e> -[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd DWORD PTR \[rip\+0x99\],xmm8 # 4786 <_start\+0x4786> -[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si r8d,QWORD PTR \[rip\+0x99\] # 478e <_start\+0x478e> -[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rip\+0x99\] # 4796 <_start\+0x4796> -[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rip\+0x99\] # 479e <_start\+0x479e> -[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rip\+0x99\] # 47a6 <_start\+0x47a6> -[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb BYTE PTR \[rip\+0x99\],xmm8,0x64 # 47b0 <_start\+0x47b0> -[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rip\+0x99\] # 47b8 <_start\+0x47b8> -[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rip\+0x99\],xmm8 # 47c2 <_start\+0x47c2> -[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb xmm15,xmm8,BYTE PTR \[rip\+0x99\],0x64 # 47cc <_start\+0x47cc> -[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa ymm8,YMMWORD PTR \[rip\+0x99\] # 47d4 <_start\+0x47d4> -[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa YMMWORD PTR \[rip\+0x99\],ymm8 # 47dc <_start\+0x47dc> -[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd ymm15,ymm8,YMMWORD PTR \[rip\+0x99\] # 47e5 <_start\+0x47e5> -[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 47ef <_start\+0x47ef> -[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 XMMWORD PTR \[rip\+0x99\],ymm8,0x64 # 47f9 <_start\+0x47f9> -[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 4803 <_start\+0x4803> -[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[rip\+0x99\],ymm8 # 480d <_start\+0x480d> +[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr DWORD PTR \[rip\+0x99\] # 48da <_start\+0x48da> +[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rip\+0x99\] # 48e2 <_start\+0x48e2> +[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa XMMWORD PTR \[rip\+0x99\],xmm8 # 48ea <_start\+0x48ea> +[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd DWORD PTR \[rip\+0x99\],xmm8 # 48f2 <_start\+0x48f2> +[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si r8d,QWORD PTR \[rip\+0x99\] # 48fa <_start\+0x48fa> +[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rip\+0x99\] # 4902 <_start\+0x4902> +[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rip\+0x99\] # 490a <_start\+0x490a> +[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rip\+0x99\] # 4912 <_start\+0x4912> +[ ]*[a-f0-9]+: c4 63 79 df 05 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rip\+0x99\],0x64 # 491c <_start\+0x491c> +[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb BYTE PTR \[rip\+0x99\],xmm8,0x64 # 4926 <_start\+0x4926> +[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rip\+0x99\] # 492e <_start\+0x492e> +[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rip\+0x99\],xmm8 # 4938 <_start\+0x4938> +[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb xmm15,xmm8,BYTE PTR \[rip\+0x99\],0x64 # 4942 <_start\+0x4942> +[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa ymm8,YMMWORD PTR \[rip\+0x99\] # 494a <_start\+0x494a> +[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa YMMWORD PTR \[rip\+0x99\],ymm8 # 4952 <_start\+0x4952> +[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd ymm15,ymm8,YMMWORD PTR \[rip\+0x99\] # 495b <_start\+0x495b> +[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 4965 <_start\+0x4965> +[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 XMMWORD PTR \[rip\+0x99\],ymm8,0x64 # 496f <_start\+0x496f> +[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 ymm15,ymm8,YMMWORD PTR \[rip\+0x99\],0x64 # 4979 <_start\+0x4979> +[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd ymm14,ymm12,YMMWORD PTR \[rip\+0x99\],ymm8 # 4983 <_start\+0x4983> [ ]*[a-f0-9]+: c5 f8 ae 94 24 99 00 00 00 vldmxcsr DWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 79 6f 84 24 99 00 00 00 vmovdqa xmm8,XMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 79 7f 84 24 99 00 00 00 vmovdqa XMMWORD PTR \[rsp\+0x99\],xmm8 @@ -3450,6 +3502,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 24 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 24 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 24 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[rsp\+0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 24 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[rsp\+0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 24 99 00 00 00 64 vpextrb BYTE PTR \[rsp\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 24 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[rsp\+0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 24 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rsp\+0x99\],xmm8 @@ -3469,6 +3522,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 84 24 99 00 00 00 vcvtdq2pd ymm8,XMMWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 41 7d 5a 84 24 99 00 00 00 vcvtpd2ps xmm8,YMMWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 41 39 e0 bc 24 99 00 00 00 vpavgb xmm15,xmm8,XMMWORD PTR \[r12\+0x99\] +[ ]*[a-f0-9]+: c4 43 79 df 84 24 99 00 00 00 64 vaeskeygenassist xmm8,XMMWORD PTR \[r12\+0x99\],0x64 [ ]*[a-f0-9]+: c4 43 79 14 84 24 99 00 00 00 64 vpextrb BYTE PTR \[r12\+0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a bc 24 99 00 00 00 vcvtsi2sd xmm15,xmm8,DWORD PTR \[r12\+0x99\] [ ]*[a-f0-9]+: c4 43 19 4a b4 24 99 00 00 00 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r12\+0x99\],xmm8 @@ -3488,6 +3542,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c5 7d 5a 04 25 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c5 39 e0 3c 25 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR ds:0xffffffffffffff67 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR ds:0xffffffffffffff67,0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 25 67 ff ff ff 64 vpextrb BYTE PTR ds:0xffffffffffffff67,xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0xffffffffffffff67 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR ds:0xffffffffffffff67,xmm8 @@ -3507,6 +3562,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 65 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 04 65 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c5 39 e0 3c 65 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[riz\*2-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 04 65 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[riz\*2-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 04 65 67 ff ff ff 64 vpextrb BYTE PTR \[riz\*2-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a 3c 65 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[riz\*2-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a 34 65 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[riz\*2-0x99\],xmm8 @@ -3526,6 +3582,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 23 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 23 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 23 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbx\+riz\*1-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 23 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbx\+riz\*1-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 23 67 ff ff ff 64 vpextrb BYTE PTR \[rbx\+riz\*1-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 23 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbx\+riz\*1-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 23 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbx\+riz\*1-0x99\],xmm8 @@ -3545,6 +3602,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 63 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c5 7d 5a 84 63 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c5 39 e0 bc 63 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbx\+riz\*2-0x99\] +[ ]*[a-f0-9]+: c4 63 79 df 84 63 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbx\+riz\*2-0x99\],0x64 [ ]*[a-f0-9]+: c4 63 79 14 84 63 67 ff ff ff 64 vpextrb BYTE PTR \[rbx\+riz\*2-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c5 3b 2a bc 63 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbx\+riz\*2-0x99\] [ ]*[a-f0-9]+: c4 63 19 4a b4 63 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbx\+riz\*2-0x99\],xmm8 @@ -3564,6 +3622,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 bc 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 01 7d 5a 84 bc 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 01 39 e0 bc bc 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[r12\+r15\*4-0x99\] +[ ]*[a-f0-9]+: c4 03 79 df 84 bc 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[r12\+r15\*4-0x99\],0x64 [ ]*[a-f0-9]+: c4 03 79 14 84 bc 67 ff ff ff 64 vpextrb BYTE PTR \[r12\+r15\*4-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 01 3b 2a bc bc 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[r12\+r15\*4-0x99\] [ ]*[a-f0-9]+: c4 03 19 4a b4 bc 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r12\+r15\*4-0x99\],xmm8 @@ -3583,6 +3642,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 f8 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 01 7d 5a 84 f8 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 01 39 e0 bc f8 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[r8\+r15\*8-0x99\] +[ ]*[a-f0-9]+: c4 03 79 df 84 f8 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[r8\+r15\*8-0x99\],0x64 [ ]*[a-f0-9]+: c4 03 79 14 84 f8 67 ff ff ff 64 vpextrb BYTE PTR \[r8\+r15\*8-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 01 3b 2a bc f8 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[r8\+r15\*8-0x99\] [ ]*[a-f0-9]+: c4 03 19 4a b4 f8 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[r8\+r15\*8-0x99\],xmm8 @@ -3602,6 +3662,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 a5 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rbp\+r12\*4-0x99\] [ ]*[a-f0-9]+: c4 21 7d 5a 84 a5 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rbp\+r12\*4-0x99\] [ ]*[a-f0-9]+: c4 21 39 e0 bc a5 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rbp\+r12\*4-0x99\] +[ ]*[a-f0-9]+: c4 23 79 df 84 a5 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rbp\+r12\*4-0x99\],0x64 [ ]*[a-f0-9]+: c4 23 79 14 84 a5 67 ff ff ff 64 vpextrb BYTE PTR \[rbp\+r12\*4-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 21 3b 2a bc a5 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rbp\+r12\*4-0x99\] [ ]*[a-f0-9]+: c4 23 19 4a b4 a5 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rbp\+r12\*4-0x99\],xmm8 @@ -3621,6 +3682,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 2c 67 ff ff ff vcvtdq2pd ymm8,XMMWORD PTR \[rsp\+r13\*1-0x99\] [ ]*[a-f0-9]+: c4 21 7d 5a 84 2c 67 ff ff ff vcvtpd2ps xmm8,YMMWORD PTR \[rsp\+r13\*1-0x99\] [ ]*[a-f0-9]+: c4 21 39 e0 bc 2c 67 ff ff ff vpavgb xmm15,xmm8,XMMWORD PTR \[rsp\+r13\*1-0x99\] +[ ]*[a-f0-9]+: c4 23 79 df 84 2c 67 ff ff ff 64 vaeskeygenassist xmm8,XMMWORD PTR \[rsp\+r13\*1-0x99\],0x64 [ ]*[a-f0-9]+: c4 23 79 14 84 2c 67 ff ff ff 64 vpextrb BYTE PTR \[rsp\+r13\*1-0x99\],xmm8,0x64 [ ]*[a-f0-9]+: c4 21 3b 2a bc 2c 67 ff ff ff vcvtsi2sd xmm15,xmm8,DWORD PTR \[rsp\+r13\*1-0x99\] [ ]*[a-f0-9]+: c4 23 19 4a b4 2c 67 ff ff ff 80 vblendvps xmm14,xmm12,XMMWORD PTR \[rsp\+r13\*1-0x99\],xmm8 @@ -3640,6 +3702,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7b 2d c0 vcvtsd2si r8d,xmm8 [ ]*[a-f0-9]+: c4 41 7e e6 c0 vcvtdq2pd ymm8,xmm8 [ ]*[a-f0-9]+: c4 41 7d 5a c0 vcvtpd2ps xmm8,ymm8 +[ ]*[a-f0-9]+: c4 43 79 df f8 64 vaeskeygenassist xmm15,xmm8,0x64 [ ]*[a-f0-9]+: c4 43 79 14 c0 64 vpextrb r8d,xmm8,0x64 [ ]*[a-f0-9]+: c4 41 3b 2a f8 vcvtsi2sd xmm15,xmm8,r8d [ ]*[a-f0-9]+: c4 43 19 4a f0 80 vblendvps xmm14,xmm12,xmm8,xmm8 diff --git a/gas/testsuite/gas/i386/x86-64-avx.d b/gas/testsuite/gas/i386/x86-64-avx.d index 72315c64092..4ec6e06fa63 100644 --- a/gas/testsuite/gas/i386/x86-64-avx.d +++ b/gas/testsuite/gas/i386/x86-64-avx.d @@ -374,6 +374,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%rcx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%rcx\) [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 @@ -623,6 +625,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 39 vxorpd \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 01 vcmpltpd %xmm4,%xmm6,%xmm2 @@ -753,6 +763,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 c2 39 1f vcmptrue_usps \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps \(%rcx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%rcx\),%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm \$0x64,%xmm4,%xmm6 @@ -1218,6 +1230,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 78 56 34 12 vcvtdq2pd 0x12345678,%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 25 78 56 34 12 vcvtpd2psy 0x12345678,%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 25 78 56 34 12 vpavgb 0x12345678,%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 78 56 34 12 64 vaeskeygenassist \$0x64,0x12345678,%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 25 78 56 34 12 64 vpextrb \$0x64,%xmm8,0x12345678 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 78 56 34 12 vcvtsi2sdl 0x12345678,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 78 56 34 12 80 vblendvps %xmm8,0x12345678,%xmm12,%xmm14 @@ -1237,6 +1250,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 45 00 vcvtdq2pd 0x0\(%rbp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 45 00 vcvtpd2psy 0x0\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 7d 00 vpavgb 0x0\(%rbp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 45 00 64 vaeskeygenassist \$0x64,0x0\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 45 00 64 vpextrb \$0x64,%xmm8,0x0\(%rbp\) [ ]*[a-f0-9]+: c5 3b 2a 7d 00 vcvtsi2sdl 0x0\(%rbp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 75 00 80 vblendvps %xmm8,0x0\(%rbp\),%xmm12,%xmm14 @@ -1256,6 +1270,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 24 vcvtdq2pd \(%rsp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 24 vcvtpd2psy \(%rsp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 24 vpavgb \(%rsp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 24 64 vaeskeygenassist \$0x64,\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 24 64 vpextrb \$0x64,%xmm8,\(%rsp\) [ ]*[a-f0-9]+: c5 3b 2a 3c 24 vcvtsi2sdl \(%rsp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 24 80 vblendvps %xmm8,\(%rsp\),%xmm12,%xmm14 @@ -1275,6 +1290,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 85 99 00 00 00 vcvtdq2pd 0x99\(%rbp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 85 99 00 00 00 vcvtpd2psy 0x99\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bd 99 00 00 00 vpavgb 0x99\(%rbp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 85 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 85 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rbp\) [ ]*[a-f0-9]+: c5 3b 2a bd 99 00 00 00 vcvtsi2sdl 0x99\(%rbp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b5 99 00 00 00 80 vblendvps %xmm8,0x99\(%rbp\),%xmm12,%xmm14 @@ -1294,6 +1310,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 87 99 00 00 00 vcvtdq2pd 0x99\(%r15\),%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a 87 99 00 00 00 vcvtpd2psy 0x99\(%r15\),%xmm8 [ ]*[a-f0-9]+: c4 41 39 e0 bf 99 00 00 00 vpavgb 0x99\(%r15\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 43 79 df 87 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%r15\),%xmm8 [ ]*[a-f0-9]+: c4 43 79 14 87 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%r15\) [ ]*[a-f0-9]+: c4 41 3b 2a bf 99 00 00 00 vcvtsi2sdl 0x99\(%r15\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a b7 99 00 00 00 80 vblendvps %xmm8,0x99\(%r15\),%xmm12,%xmm14 @@ -1305,25 +1322,26 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 43 7d 19 87 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%r15\) [ ]*[a-f0-9]+: c4 43 3d 06 bf 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%r15\),%ymm8,%ymm15 [ ]*[a-f0-9]+: c4 43 1d 4b b7 99 00 00 00 80 vblendvpd %ymm8,0x99\(%r15\),%ymm12,%ymm14 -[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr 0x99\(%rip\) # 1a31 <_start\+0x1a31> -[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%xmm8 # 1a39 <_start\+0x1a39> -[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa %xmm8,0x99\(%rip\) # 1a41 <_start\+0x1a41> -[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd %xmm8,0x99\(%rip\) # 1a49 <_start\+0x1a49> -[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si 0x99\(%rip\),%r8d # 1a51 <_start\+0x1a51> -[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd 0x99\(%rip\),%ymm8 # 1a59 <_start\+0x1a59> -[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2psy 0x99\(%rip\),%xmm8 # 1a61 <_start\+0x1a61> -[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb 0x99\(%rip\),%xmm8,%xmm15 # 1a69 <_start\+0x1a69> -[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rip\) # 1a73 <_start\+0x1a73> -[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sdl 0x99\(%rip\),%xmm8,%xmm15 # 1a7b <_start\+0x1a7b> -[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps %xmm8,0x99\(%rip\),%xmm12,%xmm14 # 1a85 <_start\+0x1a85> -[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb \$0x64,0x99\(%rip\),%xmm8,%xmm15 # 1a8f <_start\+0x1a8f> -[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%ymm8 # 1a97 <_start\+0x1a97> -[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa %ymm8,0x99\(%rip\) # 1a9f <_start\+0x1a9f> -[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd 0x99\(%rip\),%ymm8,%ymm15 # 1aa8 <_start\+0x1aa8> -[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd \$0x64,0x99\(%rip\),%ymm8 # 1ab2 <_start\+0x1ab2> -[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%rip\) # 1abc <_start\+0x1abc> -[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%rip\),%ymm8,%ymm15 # 1ac6 <_start\+0x1ac6> -[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd %ymm8,0x99\(%rip\),%ymm12,%ymm14 # 1ad0 <_start\+0x1ad0> +[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr 0x99\(%rip\) # 1a9c <_start\+0x1a9c> +[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%xmm8 # 1aa4 <_start\+0x1aa4> +[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa %xmm8,0x99\(%rip\) # 1aac <_start\+0x1aac> +[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd %xmm8,0x99\(%rip\) # 1ab4 <_start\+0x1ab4> +[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si 0x99\(%rip\),%r8d # 1abc <_start\+0x1abc> +[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd 0x99\(%rip\),%ymm8 # 1ac4 <_start\+0x1ac4> +[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2psy 0x99\(%rip\),%xmm8 # 1acc <_start\+0x1acc> +[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb 0x99\(%rip\),%xmm8,%xmm15 # 1ad4 <_start\+0x1ad4> +[ ]*[a-f0-9]+: c4 63 79 df 05 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rip\),%xmm8 # 1ade <_start\+0x1ade> +[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rip\) # 1ae8 <_start\+0x1ae8> +[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sdl 0x99\(%rip\),%xmm8,%xmm15 # 1af0 <_start\+0x1af0> +[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps %xmm8,0x99\(%rip\),%xmm12,%xmm14 # 1afa <_start\+0x1afa> +[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb \$0x64,0x99\(%rip\),%xmm8,%xmm15 # 1b04 <_start\+0x1b04> +[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%ymm8 # 1b0c <_start\+0x1b0c> +[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa %ymm8,0x99\(%rip\) # 1b14 <_start\+0x1b14> +[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd 0x99\(%rip\),%ymm8,%ymm15 # 1b1d <_start\+0x1b1d> +[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd \$0x64,0x99\(%rip\),%ymm8 # 1b27 <_start\+0x1b27> +[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%rip\) # 1b31 <_start\+0x1b31> +[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%rip\),%ymm8,%ymm15 # 1b3b <_start\+0x1b3b> +[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd %ymm8,0x99\(%rip\),%ymm12,%ymm14 # 1b45 <_start\+0x1b45> [ ]*[a-f0-9]+: c5 f8 ae 94 24 99 00 00 00 vldmxcsr 0x99\(%rsp\) [ ]*[a-f0-9]+: c5 79 6f 84 24 99 00 00 00 vmovdqa 0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c5 79 7f 84 24 99 00 00 00 vmovdqa %xmm8,0x99\(%rsp\) @@ -1332,6 +1350,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 24 99 00 00 00 vcvtdq2pd 0x99\(%rsp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 24 99 00 00 00 vcvtpd2psy 0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 24 99 00 00 00 vpavgb 0x99\(%rsp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 24 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 24 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rsp\) [ ]*[a-f0-9]+: c5 3b 2a bc 24 99 00 00 00 vcvtsi2sdl 0x99\(%rsp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 24 99 00 00 00 80 vblendvps %xmm8,0x99\(%rsp\),%xmm12,%xmm14 @@ -1351,6 +1370,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 84 24 99 00 00 00 vcvtdq2pd 0x99\(%r12\),%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a 84 24 99 00 00 00 vcvtpd2psy 0x99\(%r12\),%xmm8 [ ]*[a-f0-9]+: c4 41 39 e0 bc 24 99 00 00 00 vpavgb 0x99\(%r12\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 43 79 df 84 24 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%r12\),%xmm8 [ ]*[a-f0-9]+: c4 43 79 14 84 24 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%r12\) [ ]*[a-f0-9]+: c4 41 3b 2a bc 24 99 00 00 00 vcvtsi2sdl 0x99\(%r12\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a b4 24 99 00 00 00 80 vblendvps %xmm8,0x99\(%r12\),%xmm12,%xmm14 @@ -1370,6 +1390,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 67 ff ff ff vcvtdq2pd 0xffffffffffffff67,%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 25 67 ff ff ff vcvtpd2psy 0xffffffffffffff67,%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 25 67 ff ff ff vpavgb 0xffffffffffffff67,%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 67 ff ff ff 64 vaeskeygenassist \$0x64,0xffffffffffffff67,%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 25 67 ff ff ff 64 vpextrb \$0x64,%xmm8,0xffffffffffffff67 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 67 ff ff ff vcvtsi2sdl 0xffffffffffffff67,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 67 ff ff ff 80 vblendvps %xmm8,0xffffffffffffff67,%xmm12,%xmm14 @@ -1389,6 +1410,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 65 67 ff ff ff vcvtdq2pd -0x99\(,%riz,2\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 65 67 ff ff ff vcvtpd2psy -0x99\(,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 65 67 ff ff ff vpavgb -0x99\(,%riz,2\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 65 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 65 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(,%riz,2\) [ ]*[a-f0-9]+: c5 3b 2a 3c 65 67 ff ff ff vcvtsi2sdl -0x99\(,%riz,2\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 65 67 ff ff ff 80 vblendvps %xmm8,-0x99\(,%riz,2\),%xmm12,%xmm14 @@ -1408,6 +1430,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 23 67 ff ff ff vcvtdq2pd -0x99\(%rbx,%riz,1\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 23 67 ff ff ff vcvtpd2psy -0x99\(%rbx,%riz,1\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 23 67 ff ff ff vpavgb -0x99\(%rbx,%riz,1\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 23 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbx,%riz,1\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 23 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbx,%riz,1\) [ ]*[a-f0-9]+: c5 3b 2a bc 23 67 ff ff ff vcvtsi2sdl -0x99\(%rbx,%riz,1\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 23 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbx,%riz,1\),%xmm12,%xmm14 @@ -1427,6 +1450,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 63 67 ff ff ff vcvtdq2pd -0x99\(%rbx,%riz,2\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 63 67 ff ff ff vcvtpd2psy -0x99\(%rbx,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 63 67 ff ff ff vpavgb -0x99\(%rbx,%riz,2\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 63 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbx,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 63 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbx,%riz,2\) [ ]*[a-f0-9]+: c5 3b 2a bc 63 67 ff ff ff vcvtsi2sdl -0x99\(%rbx,%riz,2\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 63 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbx,%riz,2\),%xmm12,%xmm14 @@ -1446,6 +1470,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 bc 67 ff ff ff vcvtdq2pd -0x99\(%r12,%r15,4\),%ymm8 [ ]*[a-f0-9]+: c4 01 7d 5a 84 bc 67 ff ff ff vcvtpd2psy -0x99\(%r12,%r15,4\),%xmm8 [ ]*[a-f0-9]+: c4 01 39 e0 bc bc 67 ff ff ff vpavgb -0x99\(%r12,%r15,4\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 03 79 df 84 bc 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%r12,%r15,4\),%xmm8 [ ]*[a-f0-9]+: c4 03 79 14 84 bc 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%r12,%r15,4\) [ ]*[a-f0-9]+: c4 01 3b 2a bc bc 67 ff ff ff vcvtsi2sdl -0x99\(%r12,%r15,4\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 03 19 4a b4 bc 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%r12,%r15,4\),%xmm12,%xmm14 @@ -1465,6 +1490,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 f8 67 ff ff ff vcvtdq2pd -0x99\(%r8,%r15,8\),%ymm8 [ ]*[a-f0-9]+: c4 01 7d 5a 84 f8 67 ff ff ff vcvtpd2psy -0x99\(%r8,%r15,8\),%xmm8 [ ]*[a-f0-9]+: c4 01 39 e0 bc f8 67 ff ff ff vpavgb -0x99\(%r8,%r15,8\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 03 79 df 84 f8 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%r8,%r15,8\),%xmm8 [ ]*[a-f0-9]+: c4 03 79 14 84 f8 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%r8,%r15,8\) [ ]*[a-f0-9]+: c4 01 3b 2a bc f8 67 ff ff ff vcvtsi2sdl -0x99\(%r8,%r15,8\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 03 19 4a b4 f8 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%r8,%r15,8\),%xmm12,%xmm14 @@ -1484,6 +1510,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 ad 67 ff ff ff vcvtdq2pd -0x99\(%rbp,%r13,4\),%ymm8 [ ]*[a-f0-9]+: c4 21 7d 5a 84 ad 67 ff ff ff vcvtpd2psy -0x99\(%rbp,%r13,4\),%xmm8 [ ]*[a-f0-9]+: c4 21 39 e0 bc ad 67 ff ff ff vpavgb -0x99\(%rbp,%r13,4\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 23 79 df 84 ad 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbp,%r13,4\),%xmm8 [ ]*[a-f0-9]+: c4 23 79 14 84 ad 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbp,%r13,4\) [ ]*[a-f0-9]+: c4 21 3b 2a bc ad 67 ff ff ff vcvtsi2sdl -0x99\(%rbp,%r13,4\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 23 19 4a b4 ad 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbp,%r13,4\),%xmm12,%xmm14 @@ -1503,6 +1530,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 24 67 ff ff ff vcvtdq2pd -0x99\(%rsp,%r12,1\),%ymm8 [ ]*[a-f0-9]+: c4 21 7d 5a 84 24 67 ff ff ff vcvtpd2psy -0x99\(%rsp,%r12,1\),%xmm8 [ ]*[a-f0-9]+: c4 21 39 e0 bc 24 67 ff ff ff vpavgb -0x99\(%rsp,%r12,1\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 23 79 df 84 24 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rsp,%r12,1\),%xmm8 [ ]*[a-f0-9]+: c4 23 79 14 84 24 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rsp,%r12,1\) [ ]*[a-f0-9]+: c4 21 3b 2a bc 24 67 ff ff ff vcvtsi2sdl -0x99\(%rsp,%r12,1\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 23 19 4a b4 24 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rsp,%r12,1\),%xmm12,%xmm14 @@ -1522,6 +1550,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7b 2d c0 vcvtsd2si %xmm8,%r8d [ ]*[a-f0-9]+: c4 41 7e e6 c0 vcvtdq2pd %xmm8,%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a c0 vcvtpd2ps %ymm8,%xmm8 +[ ]*[a-f0-9]+: c4 43 79 df f8 64 vaeskeygenassist \$0x64,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 79 14 c0 64 vpextrb \$0x64,%xmm8,%r8d [ ]*[a-f0-9]+: c4 41 3b 2a f8 vcvtsi2sd %r8d,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a f0 80 vblendvps %xmm8,%xmm8,%xmm12,%xmm14 @@ -2084,6 +2113,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%rcx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%rcx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%rcx\) [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%rcx\) @@ -2460,6 +2492,18 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c8 57 d4 vxorps %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c8 57 39 vxorps \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc d4 vaesenc %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dc 39 vaesenc \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd d4 vaesenclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 dd 39 vaesenclast \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de d4 vaesdec %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 de 39 vaesdec \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df d4 vaesdeclast %xmm4,%xmm6,%xmm2 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%rcx\),%xmm6,%xmm7 +[ ]*[a-f0-9]+: c4 e2 49 df 39 vaesdeclast \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 d4 00 vcmpeqpd %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%rcx\),%xmm6,%xmm7 [ ]*[a-f0-9]+: c5 c9 c2 39 00 vcmpeqpd \(%rcx\),%xmm6,%xmm7 @@ -2656,6 +2700,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 e2 59 2c 31 vmaskmovps \(%rcx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%rcx\),%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e2 59 2d 31 vmaskmovpd \(%rcx\),%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%rcx\),%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%rcx\),%xmm6 @@ -3354,6 +3401,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 78 56 34 12 vcvtdq2pd 0x12345678,%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 25 78 56 34 12 vcvtpd2psy 0x12345678,%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 25 78 56 34 12 vpavgb 0x12345678,%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 78 56 34 12 64 vaeskeygenassist \$0x64,0x12345678,%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 25 78 56 34 12 64 vpextrb \$0x64,%xmm8,0x12345678 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 78 56 34 12 vcvtsi2sdl 0x12345678,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 78 56 34 12 80 vblendvps %xmm8,0x12345678,%xmm12,%xmm14 @@ -3373,6 +3421,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 45 00 vcvtdq2pd 0x0\(%rbp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 45 00 vcvtpd2psy 0x0\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 7d 00 vpavgb 0x0\(%rbp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 45 00 64 vaeskeygenassist \$0x64,0x0\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 45 00 64 vpextrb \$0x64,%xmm8,0x0\(%rbp\) [ ]*[a-f0-9]+: c5 3b 2a 7d 00 vcvtsi2sdl 0x0\(%rbp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 75 00 80 vblendvps %xmm8,0x0\(%rbp\),%xmm12,%xmm14 @@ -3392,6 +3441,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 85 99 00 00 00 vcvtdq2pd 0x99\(%rbp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 85 99 00 00 00 vcvtpd2psy 0x99\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bd 99 00 00 00 vpavgb 0x99\(%rbp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 85 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rbp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 85 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rbp\) [ ]*[a-f0-9]+: c5 3b 2a bd 99 00 00 00 vcvtsi2sdl 0x99\(%rbp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b5 99 00 00 00 80 vblendvps %xmm8,0x99\(%rbp\),%xmm12,%xmm14 @@ -3411,6 +3461,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 87 99 00 00 00 vcvtdq2pd 0x99\(%r15\),%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a 87 99 00 00 00 vcvtpd2psy 0x99\(%r15\),%xmm8 [ ]*[a-f0-9]+: c4 41 39 e0 bf 99 00 00 00 vpavgb 0x99\(%r15\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 43 79 df 87 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%r15\),%xmm8 [ ]*[a-f0-9]+: c4 43 79 14 87 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%r15\) [ ]*[a-f0-9]+: c4 41 3b 2a bf 99 00 00 00 vcvtsi2sdl 0x99\(%r15\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a b7 99 00 00 00 80 vblendvps %xmm8,0x99\(%r15\),%xmm12,%xmm14 @@ -3422,25 +3473,26 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 43 7d 19 87 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%r15\) [ ]*[a-f0-9]+: c4 43 3d 06 bf 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%r15\),%ymm8,%ymm15 [ ]*[a-f0-9]+: c4 43 1d 4b b7 99 00 00 00 80 vblendvpd %ymm8,0x99\(%r15\),%ymm12,%ymm14 -[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr 0x99\(%rip\) # 476e <_start\+0x476e> -[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%xmm8 # 4776 <_start\+0x4776> -[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa %xmm8,0x99\(%rip\) # 477e <_start\+0x477e> -[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd %xmm8,0x99\(%rip\) # 4786 <_start\+0x4786> -[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si 0x99\(%rip\),%r8d # 478e <_start\+0x478e> -[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd 0x99\(%rip\),%ymm8 # 4796 <_start\+0x4796> -[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2psy 0x99\(%rip\),%xmm8 # 479e <_start\+0x479e> -[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb 0x99\(%rip\),%xmm8,%xmm15 # 47a6 <_start\+0x47a6> -[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rip\) # 47b0 <_start\+0x47b0> -[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sdl 0x99\(%rip\),%xmm8,%xmm15 # 47b8 <_start\+0x47b8> -[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps %xmm8,0x99\(%rip\),%xmm12,%xmm14 # 47c2 <_start\+0x47c2> -[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb \$0x64,0x99\(%rip\),%xmm8,%xmm15 # 47cc <_start\+0x47cc> -[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%ymm8 # 47d4 <_start\+0x47d4> -[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa %ymm8,0x99\(%rip\) # 47dc <_start\+0x47dc> -[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd 0x99\(%rip\),%ymm8,%ymm15 # 47e5 <_start\+0x47e5> -[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd \$0x64,0x99\(%rip\),%ymm8 # 47ef <_start\+0x47ef> -[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%rip\) # 47f9 <_start\+0x47f9> -[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%rip\),%ymm8,%ymm15 # 4803 <_start\+0x4803> -[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd %ymm8,0x99\(%rip\),%ymm12,%ymm14 # 480d <_start\+0x480d> +[ ]*[a-f0-9]+: c5 f8 ae 15 99 00 00 00 vldmxcsr 0x99\(%rip\) # 48da <_start\+0x48da> +[ ]*[a-f0-9]+: c5 79 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%xmm8 # 48e2 <_start\+0x48e2> +[ ]*[a-f0-9]+: c5 79 7f 05 99 00 00 00 vmovdqa %xmm8,0x99\(%rip\) # 48ea <_start\+0x48ea> +[ ]*[a-f0-9]+: c5 79 7e 05 99 00 00 00 vmovd %xmm8,0x99\(%rip\) # 48f2 <_start\+0x48f2> +[ ]*[a-f0-9]+: c5 7b 2d 05 99 00 00 00 vcvtsd2si 0x99\(%rip\),%r8d # 48fa <_start\+0x48fa> +[ ]*[a-f0-9]+: c5 7e e6 05 99 00 00 00 vcvtdq2pd 0x99\(%rip\),%ymm8 # 4902 <_start\+0x4902> +[ ]*[a-f0-9]+: c5 7d 5a 05 99 00 00 00 vcvtpd2psy 0x99\(%rip\),%xmm8 # 490a <_start\+0x490a> +[ ]*[a-f0-9]+: c5 39 e0 3d 99 00 00 00 vpavgb 0x99\(%rip\),%xmm8,%xmm15 # 4912 <_start\+0x4912> +[ ]*[a-f0-9]+: c4 63 79 df 05 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rip\),%xmm8 # 491c <_start\+0x491c> +[ ]*[a-f0-9]+: c4 63 79 14 05 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rip\) # 4926 <_start\+0x4926> +[ ]*[a-f0-9]+: c5 3b 2a 3d 99 00 00 00 vcvtsi2sdl 0x99\(%rip\),%xmm8,%xmm15 # 492e <_start\+0x492e> +[ ]*[a-f0-9]+: c4 63 19 4a 35 99 00 00 00 80 vblendvps %xmm8,0x99\(%rip\),%xmm12,%xmm14 # 4938 <_start\+0x4938> +[ ]*[a-f0-9]+: c4 63 39 20 3d 99 00 00 00 64 vpinsrb \$0x64,0x99\(%rip\),%xmm8,%xmm15 # 4942 <_start\+0x4942> +[ ]*[a-f0-9]+: c5 7d 6f 05 99 00 00 00 vmovdqa 0x99\(%rip\),%ymm8 # 494a <_start\+0x494a> +[ ]*[a-f0-9]+: c5 7d 7f 05 99 00 00 00 vmovdqa %ymm8,0x99\(%rip\) # 4952 <_start\+0x4952> +[ ]*[a-f0-9]+: c4 62 3d 0d 3d 99 00 00 00 vpermilpd 0x99\(%rip\),%ymm8,%ymm15 # 495b <_start\+0x495b> +[ ]*[a-f0-9]+: c4 63 7d 09 05 99 00 00 00 64 vroundpd \$0x64,0x99\(%rip\),%ymm8 # 4965 <_start\+0x4965> +[ ]*[a-f0-9]+: c4 63 7d 19 05 99 00 00 00 64 vextractf128 \$0x64,%ymm8,0x99\(%rip\) # 496f <_start\+0x496f> +[ ]*[a-f0-9]+: c4 63 3d 06 3d 99 00 00 00 64 vperm2f128 \$0x64,0x99\(%rip\),%ymm8,%ymm15 # 4979 <_start\+0x4979> +[ ]*[a-f0-9]+: c4 63 1d 4b 35 99 00 00 00 80 vblendvpd %ymm8,0x99\(%rip\),%ymm12,%ymm14 # 4983 <_start\+0x4983> [ ]*[a-f0-9]+: c5 f8 ae 94 24 99 00 00 00 vldmxcsr 0x99\(%rsp\) [ ]*[a-f0-9]+: c5 79 6f 84 24 99 00 00 00 vmovdqa 0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c5 79 7f 84 24 99 00 00 00 vmovdqa %xmm8,0x99\(%rsp\) @@ -3449,6 +3501,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 24 99 00 00 00 vcvtdq2pd 0x99\(%rsp\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 24 99 00 00 00 vcvtpd2psy 0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 24 99 00 00 00 vpavgb 0x99\(%rsp\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 24 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%rsp\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 24 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%rsp\) [ ]*[a-f0-9]+: c5 3b 2a bc 24 99 00 00 00 vcvtsi2sdl 0x99\(%rsp\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 24 99 00 00 00 80 vblendvps %xmm8,0x99\(%rsp\),%xmm12,%xmm14 @@ -3468,6 +3521,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7e e6 84 24 99 00 00 00 vcvtdq2pd 0x99\(%r12\),%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a 84 24 99 00 00 00 vcvtpd2psy 0x99\(%r12\),%xmm8 [ ]*[a-f0-9]+: c4 41 39 e0 bc 24 99 00 00 00 vpavgb 0x99\(%r12\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 43 79 df 84 24 99 00 00 00 64 vaeskeygenassist \$0x64,0x99\(%r12\),%xmm8 [ ]*[a-f0-9]+: c4 43 79 14 84 24 99 00 00 00 64 vpextrb \$0x64,%xmm8,0x99\(%r12\) [ ]*[a-f0-9]+: c4 41 3b 2a bc 24 99 00 00 00 vcvtsi2sdl 0x99\(%r12\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a b4 24 99 00 00 00 80 vblendvps %xmm8,0x99\(%r12\),%xmm12,%xmm14 @@ -3487,6 +3541,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 25 67 ff ff ff vcvtdq2pd 0xffffffffffffff67,%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 25 67 ff ff ff vcvtpd2psy 0xffffffffffffff67,%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 25 67 ff ff ff vpavgb 0xffffffffffffff67,%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 25 67 ff ff ff 64 vaeskeygenassist \$0x64,0xffffffffffffff67,%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 25 67 ff ff ff 64 vpextrb \$0x64,%xmm8,0xffffffffffffff67 [ ]*[a-f0-9]+: c5 3b 2a 3c 25 67 ff ff ff vcvtsi2sdl 0xffffffffffffff67,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 25 67 ff ff ff 80 vblendvps %xmm8,0xffffffffffffff67,%xmm12,%xmm14 @@ -3506,6 +3561,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 04 65 67 ff ff ff vcvtdq2pd -0x99\(,%riz,2\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 04 65 67 ff ff ff vcvtpd2psy -0x99\(,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 3c 65 67 ff ff ff vpavgb -0x99\(,%riz,2\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 04 65 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 04 65 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(,%riz,2\) [ ]*[a-f0-9]+: c5 3b 2a 3c 65 67 ff ff ff vcvtsi2sdl -0x99\(,%riz,2\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a 34 65 67 ff ff ff 80 vblendvps %xmm8,-0x99\(,%riz,2\),%xmm12,%xmm14 @@ -3525,6 +3581,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 23 67 ff ff ff vcvtdq2pd -0x99\(%rbx,%riz,1\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 23 67 ff ff ff vcvtpd2psy -0x99\(%rbx,%riz,1\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 23 67 ff ff ff vpavgb -0x99\(%rbx,%riz,1\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 23 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbx,%riz,1\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 23 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbx,%riz,1\) [ ]*[a-f0-9]+: c5 3b 2a bc 23 67 ff ff ff vcvtsi2sdl -0x99\(%rbx,%riz,1\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 23 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbx,%riz,1\),%xmm12,%xmm14 @@ -3544,6 +3601,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 7e e6 84 63 67 ff ff ff vcvtdq2pd -0x99\(%rbx,%riz,2\),%ymm8 [ ]*[a-f0-9]+: c5 7d 5a 84 63 67 ff ff ff vcvtpd2psy -0x99\(%rbx,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c5 39 e0 bc 63 67 ff ff ff vpavgb -0x99\(%rbx,%riz,2\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 63 79 df 84 63 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbx,%riz,2\),%xmm8 [ ]*[a-f0-9]+: c4 63 79 14 84 63 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbx,%riz,2\) [ ]*[a-f0-9]+: c5 3b 2a bc 63 67 ff ff ff vcvtsi2sdl -0x99\(%rbx,%riz,2\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 63 19 4a b4 63 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbx,%riz,2\),%xmm12,%xmm14 @@ -3563,6 +3621,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 bc 67 ff ff ff vcvtdq2pd -0x99\(%r12,%r15,4\),%ymm8 [ ]*[a-f0-9]+: c4 01 7d 5a 84 bc 67 ff ff ff vcvtpd2psy -0x99\(%r12,%r15,4\),%xmm8 [ ]*[a-f0-9]+: c4 01 39 e0 bc bc 67 ff ff ff vpavgb -0x99\(%r12,%r15,4\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 03 79 df 84 bc 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%r12,%r15,4\),%xmm8 [ ]*[a-f0-9]+: c4 03 79 14 84 bc 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%r12,%r15,4\) [ ]*[a-f0-9]+: c4 01 3b 2a bc bc 67 ff ff ff vcvtsi2sdl -0x99\(%r12,%r15,4\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 03 19 4a b4 bc 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%r12,%r15,4\),%xmm12,%xmm14 @@ -3582,6 +3641,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 01 7e e6 84 f8 67 ff ff ff vcvtdq2pd -0x99\(%r8,%r15,8\),%ymm8 [ ]*[a-f0-9]+: c4 01 7d 5a 84 f8 67 ff ff ff vcvtpd2psy -0x99\(%r8,%r15,8\),%xmm8 [ ]*[a-f0-9]+: c4 01 39 e0 bc f8 67 ff ff ff vpavgb -0x99\(%r8,%r15,8\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 03 79 df 84 f8 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%r8,%r15,8\),%xmm8 [ ]*[a-f0-9]+: c4 03 79 14 84 f8 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%r8,%r15,8\) [ ]*[a-f0-9]+: c4 01 3b 2a bc f8 67 ff ff ff vcvtsi2sdl -0x99\(%r8,%r15,8\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 03 19 4a b4 f8 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%r8,%r15,8\),%xmm12,%xmm14 @@ -3601,6 +3661,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 a5 67 ff ff ff vcvtdq2pd -0x99\(%rbp,%r12,4\),%ymm8 [ ]*[a-f0-9]+: c4 21 7d 5a 84 a5 67 ff ff ff vcvtpd2psy -0x99\(%rbp,%r12,4\),%xmm8 [ ]*[a-f0-9]+: c4 21 39 e0 bc a5 67 ff ff ff vpavgb -0x99\(%rbp,%r12,4\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 23 79 df 84 a5 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rbp,%r12,4\),%xmm8 [ ]*[a-f0-9]+: c4 23 79 14 84 a5 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rbp,%r12,4\) [ ]*[a-f0-9]+: c4 21 3b 2a bc a5 67 ff ff ff vcvtsi2sdl -0x99\(%rbp,%r12,4\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 23 19 4a b4 a5 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rbp,%r12,4\),%xmm12,%xmm14 @@ -3620,6 +3681,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 21 7e e6 84 2c 67 ff ff ff vcvtdq2pd -0x99\(%rsp,%r13,1\),%ymm8 [ ]*[a-f0-9]+: c4 21 7d 5a 84 2c 67 ff ff ff vcvtpd2psy -0x99\(%rsp,%r13,1\),%xmm8 [ ]*[a-f0-9]+: c4 21 39 e0 bc 2c 67 ff ff ff vpavgb -0x99\(%rsp,%r13,1\),%xmm8,%xmm15 +[ ]*[a-f0-9]+: c4 23 79 df 84 2c 67 ff ff ff 64 vaeskeygenassist \$0x64,-0x99\(%rsp,%r13,1\),%xmm8 [ ]*[a-f0-9]+: c4 23 79 14 84 2c 67 ff ff ff 64 vpextrb \$0x64,%xmm8,-0x99\(%rsp,%r13,1\) [ ]*[a-f0-9]+: c4 21 3b 2a bc 2c 67 ff ff ff vcvtsi2sdl -0x99\(%rsp,%r13,1\),%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 23 19 4a b4 2c 67 ff ff ff 80 vblendvps %xmm8,-0x99\(%rsp,%r13,1\),%xmm12,%xmm14 @@ -3639,6 +3701,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c4 41 7b 2d c0 vcvtsd2si %xmm8,%r8d [ ]*[a-f0-9]+: c4 41 7e e6 c0 vcvtdq2pd %xmm8,%ymm8 [ ]*[a-f0-9]+: c4 41 7d 5a c0 vcvtpd2ps %ymm8,%xmm8 +[ ]*[a-f0-9]+: c4 43 79 df f8 64 vaeskeygenassist \$0x64,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 79 14 c0 64 vpextrb \$0x64,%xmm8,%r8d [ ]*[a-f0-9]+: c4 41 3b 2a f8 vcvtsi2sd %r8d,%xmm8,%xmm15 [ ]*[a-f0-9]+: c4 43 19 4a f0 80 vblendvps %xmm8,%xmm8,%xmm12,%xmm14 diff --git a/gas/testsuite/gas/i386/x86-64-avx.s b/gas/testsuite/gas/i386/x86-64-avx.s index e756e32fbd8..5f9d521bf1b 100644 --- a/gas/testsuite/gas/i386/x86-64-avx.s +++ b/gas/testsuite/gas/i386/x86-64-avx.s @@ -405,6 +405,8 @@ _start: vsqrtpd (%rcx),%xmm4 vsqrtps %xmm4,%xmm6 vsqrtps (%rcx),%xmm4 + vaesimc %xmm4,%xmm6 + vaesimc (%rcx),%xmm4 # Tests for op xmm, xmm/mem128 vmovapd %xmm4,%xmm6 @@ -664,6 +666,14 @@ _start: vxorpd (%rcx),%xmm6,%xmm7 vxorps %xmm4,%xmm6,%xmm2 vxorps (%rcx),%xmm6,%xmm7 + vaesenc %xmm4,%xmm6,%xmm2 + vaesenc (%rcx),%xmm6,%xmm7 + vaesenclast %xmm4,%xmm6,%xmm2 + vaesenclast (%rcx),%xmm6,%xmm7 + vaesdec %xmm4,%xmm6,%xmm2 + vaesdec (%rcx),%xmm6,%xmm7 + vaesdeclast %xmm4,%xmm6,%xmm2 + vaesdeclast (%rcx),%xmm6,%xmm7 vcmpeqpd %xmm4,%xmm6,%xmm2 vcmpeqpd (%rcx),%xmm6,%xmm7 vcmpltpd %xmm4,%xmm6,%xmm2 @@ -798,6 +808,8 @@ _start: vmaskmovpd (%rcx),%xmm4,%xmm6 # Tests for op imm8, xmm/mem128, xmm + vaeskeygenassist $100,%xmm4,%xmm6 + vaeskeygenassist $100,(%rcx),%xmm6 vpcmpestri $100,%xmm4,%xmm6 vpcmpestri $100,(%rcx),%xmm6 vpcmpestrm $100,%xmm4,%xmm6 @@ -1371,6 +1383,7 @@ _start: vcvtdq2pd 0x12345678,%ymm8 vcvtpd2psy 0x12345678,%xmm8 vpavgb 0x12345678,%xmm8,%xmm15 + vaeskeygenassist $100,0x12345678,%xmm8 vpextrb $100,%xmm8,0x12345678 vcvtsi2sdl 0x12345678,%xmm8,%xmm15 vblendvps %xmm8,0x12345678,%xmm12,%xmm14 @@ -1390,6 +1403,7 @@ _start: vcvtdq2pd (%rbp),%ymm8 vcvtpd2psy (%rbp),%xmm8 vpavgb (%rbp),%xmm8,%xmm15 + vaeskeygenassist $100,(%rbp),%xmm8 vpextrb $100,%xmm8,(%rbp) vcvtsi2sdl (%rbp),%xmm8,%xmm15 vblendvps %xmm8,(%rbp),%xmm12,%xmm14 @@ -1409,6 +1423,7 @@ _start: vcvtdq2pd (%rsp),%ymm8 vcvtpd2psy (%rsp),%xmm8 vpavgb (%rsp),%xmm8,%xmm15 + vaeskeygenassist $100,(%rsp),%xmm8 vpextrb $100,%xmm8,(%rsp) vcvtsi2sdl (%rsp),%xmm8,%xmm15 vblendvps %xmm8,(%rsp),%xmm12,%xmm14 @@ -1428,6 +1443,7 @@ _start: vcvtdq2pd 0x99(%rbp),%ymm8 vcvtpd2psy 0x99(%rbp),%xmm8 vpavgb 0x99(%rbp),%xmm8,%xmm15 + vaeskeygenassist $100,0x99(%rbp),%xmm8 vpextrb $100,%xmm8,0x99(%rbp) vcvtsi2sdl 0x99(%rbp),%xmm8,%xmm15 vblendvps %xmm8,0x99(%rbp),%xmm12,%xmm14 @@ -1447,6 +1463,7 @@ _start: vcvtdq2pd 0x99(%r15),%ymm8 vcvtpd2psy 0x99(%r15),%xmm8 vpavgb 0x99(%r15),%xmm8,%xmm15 + vaeskeygenassist $100,0x99(%r15),%xmm8 vpextrb $100,%xmm8,0x99(%r15) vcvtsi2sdl 0x99(%r15),%xmm8,%xmm15 vblendvps %xmm8,0x99(%r15),%xmm12,%xmm14 @@ -1466,6 +1483,7 @@ _start: vcvtdq2pd 0x99(%rip),%ymm8 vcvtpd2psy 0x99(%rip),%xmm8 vpavgb 0x99(%rip),%xmm8,%xmm15 + vaeskeygenassist $100,0x99(%rip),%xmm8 vpextrb $100,%xmm8,0x99(%rip) vcvtsi2sdl 0x99(%rip),%xmm8,%xmm15 vblendvps %xmm8,0x99(%rip),%xmm12,%xmm14 @@ -1485,6 +1503,7 @@ _start: vcvtdq2pd 0x99(%rsp),%ymm8 vcvtpd2psy 0x99(%rsp),%xmm8 vpavgb 0x99(%rsp),%xmm8,%xmm15 + vaeskeygenassist $100,0x99(%rsp),%xmm8 vpextrb $100,%xmm8,0x99(%rsp) vcvtsi2sdl 0x99(%rsp),%xmm8,%xmm15 vblendvps %xmm8,0x99(%rsp),%xmm12,%xmm14 @@ -1504,6 +1523,7 @@ _start: vcvtdq2pd 0x99(%r12),%ymm8 vcvtpd2psy 0x99(%r12),%xmm8 vpavgb 0x99(%r12),%xmm8,%xmm15 + vaeskeygenassist $100,0x99(%r12),%xmm8 vpextrb $100,%xmm8,0x99(%r12) vcvtsi2sdl 0x99(%r12),%xmm8,%xmm15 vblendvps %xmm8,0x99(%r12),%xmm12,%xmm14 @@ -1523,6 +1543,7 @@ _start: vcvtdq2pd -0x99(,%riz),%ymm8 vcvtpd2psy -0x99(,%riz),%xmm8 vpavgb -0x99(,%riz),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(,%riz),%xmm8 vpextrb $100,%xmm8,-0x99(,%riz) vcvtsi2sdl -0x99(,%riz),%xmm8,%xmm15 vblendvps %xmm8,-0x99(,%riz),%xmm12,%xmm14 @@ -1542,6 +1563,7 @@ _start: vcvtdq2pd -0x99(,%riz,2),%ymm8 vcvtpd2psy -0x99(,%riz,2),%xmm8 vpavgb -0x99(,%riz,2),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(,%riz,2),%xmm8 vpextrb $100,%xmm8,-0x99(,%riz,2) vcvtsi2sdl -0x99(,%riz,2),%xmm8,%xmm15 vblendvps %xmm8,-0x99(,%riz,2),%xmm12,%xmm14 @@ -1561,6 +1583,7 @@ _start: vcvtdq2pd -0x99(%rbx,%riz),%ymm8 vcvtpd2psy -0x99(%rbx,%riz),%xmm8 vpavgb -0x99(%rbx,%riz),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%rbx,%riz),%xmm8 vpextrb $100,%xmm8,-0x99(%rbx,%riz) vcvtsi2sdl -0x99(%rbx,%riz),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%rbx,%riz),%xmm12,%xmm14 @@ -1580,6 +1603,7 @@ _start: vcvtdq2pd -0x99(%rbx,%riz,2),%ymm8 vcvtpd2psy -0x99(%rbx,%riz,2),%xmm8 vpavgb -0x99(%rbx,%riz,2),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%rbx,%riz,2),%xmm8 vpextrb $100,%xmm8,-0x99(%rbx,%riz,2) vcvtsi2sdl -0x99(%rbx,%riz,2),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%rbx,%riz,2),%xmm12,%xmm14 @@ -1599,6 +1623,7 @@ _start: vcvtdq2pd -0x99(%r12,%r15,4),%ymm8 vcvtpd2psy -0x99(%r12,%r15,4),%xmm8 vpavgb -0x99(%r12,%r15,4),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%r12,%r15,4),%xmm8 vpextrb $100,%xmm8,-0x99(%r12,%r15,4) vcvtsi2sdl -0x99(%r12,%r15,4),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%r12,%r15,4),%xmm12,%xmm14 @@ -1618,6 +1643,7 @@ _start: vcvtdq2pd -0x99(%r8,%r15,8),%ymm8 vcvtpd2psy -0x99(%r8,%r15,8),%xmm8 vpavgb -0x99(%r8,%r15,8),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%r8,%r15,8),%xmm8 vpextrb $100,%xmm8,-0x99(%r8,%r15,8) vcvtsi2sdl -0x99(%r8,%r15,8),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%r8,%r15,8),%xmm12,%xmm14 @@ -1637,6 +1663,7 @@ _start: vcvtdq2pd -0x99(%rbp,%r13,4),%ymm8 vcvtpd2psy -0x99(%rbp,%r13,4),%xmm8 vpavgb -0x99(%rbp,%r13,4),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%rbp,%r13,4),%xmm8 vpextrb $100,%xmm8,-0x99(%rbp,%r13,4) vcvtsi2sdl -0x99(%rbp,%r13,4),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%rbp,%r13,4),%xmm12,%xmm14 @@ -1656,6 +1683,7 @@ _start: vcvtdq2pd -0x99(%rsp,%r12,1),%ymm8 vcvtpd2psy -0x99(%rsp,%r12,1),%xmm8 vpavgb -0x99(%rsp,%r12,1),%xmm8,%xmm15 + vaeskeygenassist $100,-0x99(%rsp,%r12,1),%xmm8 vpextrb $100,%xmm8,-0x99(%rsp,%r12,1) vcvtsi2sdl -0x99(%rsp,%r12,1),%xmm8,%xmm15 vblendvps %xmm8,-0x99(%rsp,%r12,1),%xmm12,%xmm14 @@ -1676,6 +1704,7 @@ _start: vcvtsd2si %xmm8,%r8d vcvtdq2pd %xmm8,%ymm8 vcvtpd2psy %ymm8,%xmm8 + vaeskeygenassist $100,%xmm8,%xmm15 vpextrb $100,%xmm8,%r8d vcvtsi2sdl %r8d,%xmm8,%xmm15 vblendvps %xmm8,%xmm8,%xmm12,%xmm14 @@ -2273,6 +2302,9 @@ _start: vsqrtps xmm6,xmm4 vsqrtps xmm4,XMMWORD PTR [rcx] vsqrtps xmm4,[rcx] + vaesimc xmm6,xmm4 + vaesimc xmm4,XMMWORD PTR [rcx] + vaesimc xmm4,[rcx] # Tests for op xmm, xmm/mem128 vmovapd xmm6,xmm4 @@ -2659,6 +2691,18 @@ _start: vxorps xmm2,xmm6,xmm4 vxorps xmm7,xmm6,XMMWORD PTR [rcx] vxorps xmm7,xmm6,[rcx] + vaesenc xmm2,xmm6,xmm4 + vaesenc xmm7,xmm6,XMMWORD PTR [rcx] + vaesenc xmm7,xmm6,[rcx] + vaesenclast xmm2,xmm6,xmm4 + vaesenclast xmm7,xmm6,XMMWORD PTR [rcx] + vaesenclast xmm7,xmm6,[rcx] + vaesdec xmm2,xmm6,xmm4 + vaesdec xmm7,xmm6,XMMWORD PTR [rcx] + vaesdec xmm7,xmm6,[rcx] + vaesdeclast xmm2,xmm6,xmm4 + vaesdeclast xmm7,xmm6,XMMWORD PTR [rcx] + vaesdeclast xmm7,xmm6,[rcx] vcmpeqpd xmm2,xmm6,xmm4 vcmpeqpd xmm7,xmm6,XMMWORD PTR [rcx] vcmpeqpd xmm7,xmm6,[rcx] @@ -2859,6 +2903,9 @@ _start: vmaskmovpd xmm6,xmm4,[rcx] # Tests for op imm8, xmm/mem128, xmm + vaeskeygenassist xmm6,xmm4,100 + vaeskeygenassist xmm6,XMMWORD PTR [rcx],100 + vaeskeygenassist xmm6,[rcx],100 vpcmpestri xmm6,xmm4,100 vpcmpestri xmm6,XMMWORD PTR [rcx],100 vpcmpestri xmm6,[rcx],100 @@ -3665,6 +3712,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR ds:0x12345678 vcvtpd2ps xmm8,YMMWORD PTR ds:0x12345678 vpavgb xmm15,xmm8,XMMWORD PTR ds:0x12345678 + vaeskeygenassist xmm8,XMMWORD PTR ds:0x12345678,100 vpextrb ds:0x12345678,xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0x12345678 vblendvps xmm14,xmm12,XMMWORD PTR ds:0x12345678,xmm8 @@ -3684,6 +3732,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rbp] vcvtpd2ps xmm8,YMMWORD PTR [rbp] vpavgb xmm15,xmm8,XMMWORD PTR [rbp] + vaeskeygenassist xmm8,XMMWORD PTR [rbp],100 vpextrb [rbp],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp] vblendvps xmm14,xmm12,XMMWORD PTR [rbp],xmm8 @@ -3703,6 +3752,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rbp+0x99] vcvtpd2ps xmm8,YMMWORD PTR [rbp+0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rbp+0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rbp+0x99],100 vpextrb [rbp+0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp+0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rbp+0x99],xmm8 @@ -3722,6 +3772,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [r15+0x99] vcvtpd2ps xmm8,YMMWORD PTR [r15+0x99] vpavgb xmm15,xmm8,XMMWORD PTR [r15+0x99] + vaeskeygenassist xmm8,XMMWORD PTR [r15+0x99],100 vpextrb [r15+0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [r15+0x99] vblendvps xmm14,xmm12,XMMWORD PTR [r15+0x99],xmm8 @@ -3741,6 +3792,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rip+0x99] vcvtpd2ps xmm8,YMMWORD PTR [rip+0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rip+0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rip+0x99],100 vpextrb [rip+0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rip+0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rip+0x99],xmm8 @@ -3760,6 +3812,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rsp+0x99] vcvtpd2ps xmm8,YMMWORD PTR [rsp+0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rsp+0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rsp+0x99],100 vpextrb [rsp+0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rsp+0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rsp+0x99],xmm8 @@ -3779,6 +3832,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [r12+0x99] vcvtpd2ps xmm8,YMMWORD PTR [r12+0x99] vpavgb xmm15,xmm8,XMMWORD PTR [r12+0x99] + vaeskeygenassist xmm8,XMMWORD PTR [r12+0x99],100 vpextrb [r12+0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [r12+0x99] vblendvps xmm14,xmm12,XMMWORD PTR [r12+0x99],xmm8 @@ -3798,6 +3852,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [riz*1-0x99] vcvtpd2ps xmm8,YMMWORD PTR [riz*1-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [riz*1-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [riz*1-0x99],100 vpextrb [riz*1-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [riz*1-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [riz*1-0x99],xmm8 @@ -3817,6 +3872,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [riz*2-0x99] vcvtpd2ps xmm8,YMMWORD PTR [riz*2-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [riz*2-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [riz*2-0x99],100 vpextrb [riz*2-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [riz*2-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [riz*2-0x99],xmm8 @@ -3836,6 +3892,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rbx+riz*1-0x99] vcvtpd2ps xmm8,YMMWORD PTR [rbx+riz*1-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rbx+riz*1-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rbx+riz*1-0x99],100 vpextrb [rbx+riz*1-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rbx+riz*1-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rbx+riz*1-0x99],xmm8 @@ -3855,6 +3912,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rbx+riz*2-0x99] vcvtpd2ps xmm8,YMMWORD PTR [rbx+riz*2-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rbx+riz*2-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rbx+riz*2-0x99],100 vpextrb [rbx+riz*2-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rbx+riz*2-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rbx+riz*2-0x99],xmm8 @@ -3874,6 +3932,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [r12+r15*4-0x99] vcvtpd2ps xmm8,YMMWORD PTR [r12+r15*4-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [r12+r15*4-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [r12+r15*4-0x99],100 vpextrb [r12+r15*4-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [r12+r15*4-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [r12+r15*4-0x99],xmm8 @@ -3893,6 +3952,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [r8+r15*8-0x99] vcvtpd2ps xmm8,YMMWORD PTR [r8+r15*8-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [r8+r15*8-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [r8+r15*8-0x99],100 vpextrb [r8+r15*8-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [r8+r15*8-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [r8+r15*8-0x99],xmm8 @@ -3912,6 +3972,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rbp+r12*4-0x99] vcvtpd2ps xmm8,YMMWORD PTR [rbp+r12*4-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rbp+r12*4-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rbp+r12*4-0x99],100 vpextrb [rbp+r12*4-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp+r12*4-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rbp+r12*4-0x99],xmm8 @@ -3931,6 +3992,7 @@ _start: vcvtdq2pd ymm8,XMMWORD PTR [rsp+r13*1-0x99] vcvtpd2ps xmm8,YMMWORD PTR [rsp+r13*1-0x99] vpavgb xmm15,xmm8,XMMWORD PTR [rsp+r13*1-0x99] + vaeskeygenassist xmm8,XMMWORD PTR [rsp+r13*1-0x99],100 vpextrb [rsp+r13*1-0x99],xmm8,100 vcvtsi2sd xmm15,xmm8,DWORD PTR [rsp+r13*1-0x99] vblendvps xmm14,xmm12,XMMWORD PTR [rsp+r13*1-0x99],xmm8 @@ -3951,6 +4013,7 @@ _start: vcvtsd2si r8d,xmm8 vcvtdq2pd ymm8,xmm8 vcvtpd2ps xmm8,ymm8 + vaeskeygenassist xmm15,xmm8,100 vpextrb r8d,xmm8,100 vcvtsi2sd xmm15,xmm8,r8d vblendvps xmm14,xmm12,xmm8,xmm8 diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx.d b/gas/testsuite/gas/i386/x86-64-sse2avx.d index 7bb63e905a6..122efd2509f 100644 --- a/gas/testsuite/gas/i386/x86-64-sse2avx.d +++ b/gas/testsuite/gas/i386/x86-64-sse2avx.d @@ -55,6 +55,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 f9 51 21 vsqrtpd \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f8 51 f4 vsqrtps %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f8 51 21 vsqrtps \(%rcx\),%xmm4 +[ ]*[a-f0-9]+: c4 e2 79 db f4 vaesimc %xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e2 79 db 21 vaesimc \(%rcx\),%xmm4 [ ]*[a-f0-9]+: c5 f9 28 f4 vmovapd %xmm4,%xmm6 [ ]*[a-f0-9]+: c5 f9 29 21 vmovapd %xmm4,\(%rcx\) [ ]*[a-f0-9]+: c5 f8 28 f4 vmovaps %xmm4,%xmm6 @@ -148,6 +150,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 e0 31 vpavgb \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 e3 f4 vpavgw %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 e3 31 vpavgw \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 00 pclmullqlqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 00 pclmullqlqdq \(%rcx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 01 pclmulhqlqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 01 pclmulhqlqdq \(%rcx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 10 pclmullqhqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 10 pclmullqhqdq \(%rcx\),%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 f4 11 pclmulhqhqdq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 66 0f 3a 44 31 11 pclmulhqhqdq \(%rcx\),%xmm6 [ ]*[a-f0-9]+: c5 c9 74 f4 vpcmpeqb %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 74 31 vpcmpeqb \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 75 f4 vpcmpeqw %xmm4,%xmm6,%xmm6 @@ -296,6 +306,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 57 31 vxorpd \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 57 f4 vxorps %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 57 31 vxorps \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dc f4 vaesenc %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dc 31 vaesenc \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dd f4 vaesenclast %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 dd 31 vaesenclast \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 de f4 vaesdec %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 de 31 vaesdec \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 df f4 vaesdeclast %xmm4,%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e2 49 df 31 vaesdeclast \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 c2 f4 00 vcmpeqpd %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c9 c2 31 00 vcmpeqpd \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 f4 00 vcmpeqps %xmm4,%xmm6,%xmm6 @@ -328,6 +346,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 c9 c2 31 07 vcmpordpd \(%rcx\),%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 f4 07 vcmpordps %xmm4,%xmm6,%xmm6 [ ]*[a-f0-9]+: c5 c8 c2 31 07 vcmpordps \(%rcx\),%xmm6,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df f4 64 vaeskeygenassist \$0x64,%xmm4,%xmm6 +[ ]*[a-f0-9]+: c4 e3 79 df 31 64 vaeskeygenassist \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 f4 64 vpcmpestri \$0x64,%xmm4,%xmm6 [ ]*[a-f0-9]+: c4 e3 79 61 31 64 vpcmpestri \$0x64,\(%rcx\),%xmm6 [ ]*[a-f0-9]+: c4 e3 79 60 f4 64 vpcmpestrm \$0x64,%xmm4,%xmm6 diff --git a/gas/testsuite/gas/i386/x86-64-sse2avx.s b/gas/testsuite/gas/i386/x86-64-sse2avx.s index 22f49d00059..4065266420b 100644 --- a/gas/testsuite/gas/i386/x86-64-sse2avx.s +++ b/gas/testsuite/gas/i386/x86-64-sse2avx.s @@ -54,6 +54,8 @@ _start: sqrtpd (%rcx),%xmm4 sqrtps %xmm4,%xmm6 sqrtps (%rcx),%xmm4 + aesimc %xmm4,%xmm6 + aesimc (%rcx),%xmm4 # Tests for op xmm, xmm/mem128 movapd %xmm4,%xmm6 @@ -155,6 +157,14 @@ _start: pavgb (%rcx),%xmm6 pavgw %xmm4,%xmm6 pavgw (%rcx),%xmm6 + pclmullqlqdq %xmm4,%xmm6 + pclmullqlqdq (%rcx),%xmm6 + pclmulhqlqdq %xmm4,%xmm6 + pclmulhqlqdq (%rcx),%xmm6 + pclmullqhqdq %xmm4,%xmm6 + pclmullqhqdq (%rcx),%xmm6 + pclmulhqhqdq %xmm4,%xmm6 + pclmulhqhqdq (%rcx),%xmm6 pcmpeqb %xmm4,%xmm6 pcmpeqb (%rcx),%xmm6 pcmpeqw %xmm4,%xmm6 @@ -303,6 +313,14 @@ _start: xorpd (%rcx),%xmm6 xorps %xmm4,%xmm6 xorps (%rcx),%xmm6 + aesenc %xmm4,%xmm6 + aesenc (%rcx),%xmm6 + aesenclast %xmm4,%xmm6 + aesenclast (%rcx),%xmm6 + aesdec %xmm4,%xmm6 + aesdec (%rcx),%xmm6 + aesdeclast %xmm4,%xmm6 + aesdeclast (%rcx),%xmm6 cmpeqpd %xmm4,%xmm6 cmpeqpd (%rcx),%xmm6 cmpeqps %xmm4,%xmm6 @@ -337,6 +355,8 @@ _start: cmpordps (%rcx),%xmm6 # Tests for op imm8, xmm/mem128, xmm + aeskeygenassist $100,%xmm4,%xmm6 + aeskeygenassist $100,(%rcx),%xmm6 pcmpestri $100,%xmm4,%xmm6 pcmpestri $100,(%rcx),%xmm6 pcmpestrm $100,%xmm4,%xmm6 diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 8fa3342e03b..3230d52a741 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,31 @@ +2008-08-20 H.J. Lu + + AVX Programming Reference (August, 2008) + * i386-dis.c (PREFIX_VEX_38DB): New. + (PREFIX_VEX_38DC): Likewise. + (PREFIX_VEX_38DD): Likewise. + (PREFIX_VEX_38DE): Likewise. + (PREFIX_VEX_38DF): Likewise. + (PREFIX_VEX_3ADF): Likewise. + (VEX_LEN_38DB_P_2): Likewise. + (VEX_LEN_38DC_P_2): Likewise. + (VEX_LEN_38DD_P_2): Likewise. + (VEX_LEN_38DE_P_2): Likewise. + (VEX_LEN_38DF_P_2): Likewise. + (VEX_LEN_3ADF_P_2): Likewise. + (PREFIX_VEX_3A04): Updated. + (VEX_LEN_3A06_P_2): Likewise. + (prefix_table): Add PREFIX_VEX_38DB, PREFIX_VEX_38DC, + PREFIX_VEX_38DD, PREFIX_VEX_38DE and PREFIX_VEX_3ADF. + (x86_64_table): Likewise. + (vex_len_table): Add VEX_LEN_38DB_P_2, VEX_LEN_38DC_P_2, + VEX_LEN_38DD_P_2, VEX_LEN_38DE_P_2, VEX_LEN_38DF_P_2 and + VEX_LEN_3ADF_P_2. + + * i386-opc.tbl: Add AES + AVX instructions. + * i386-init.h: Regenerated. + * i386-tbl.h: Likewise. + 2008-08-15 Andreas Krebbel * s390-opc.c (INSTR_RRF_FFRU, MASK_RRF_FFRU): New instruction format. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index c0688cf8f1b..6c2b5133ec7 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -939,7 +939,12 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr) #define PREFIX_VEX_383F (PREFIX_VEX_383E + 1) #define PREFIX_VEX_3840 (PREFIX_VEX_383F + 1) #define PREFIX_VEX_3841 (PREFIX_VEX_3840 + 1) -#define PREFIX_VEX_3A04 (PREFIX_VEX_3841 + 1) +#define PREFIX_VEX_38DB (PREFIX_VEX_3841 + 1) +#define PREFIX_VEX_38DC (PREFIX_VEX_38DB + 1) +#define PREFIX_VEX_38DD (PREFIX_VEX_38DC + 1) +#define PREFIX_VEX_38DE (PREFIX_VEX_38DD + 1) +#define PREFIX_VEX_38DF (PREFIX_VEX_38DE + 1) +#define PREFIX_VEX_3A04 (PREFIX_VEX_38DF + 1) #define PREFIX_VEX_3A05 (PREFIX_VEX_3A04 + 1) #define PREFIX_VEX_3A06 (PREFIX_VEX_3A05 + 1) #define PREFIX_VEX_3A08 (PREFIX_VEX_3A06 + 1) @@ -991,6 +996,7 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr) #define PREFIX_VEX_3A7D (PREFIX_VEX_3A7C + 1) #define PREFIX_VEX_3A7E (PREFIX_VEX_3A7D + 1) #define PREFIX_VEX_3A7F (PREFIX_VEX_3A7E + 1) +#define PREFIX_VEX_3ADF (PREFIX_VEX_3A7F + 1) #define X86_64_06 0 #define X86_64_07 (X86_64_06 + 1) @@ -1200,7 +1206,12 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr) #define VEX_LEN_383F_P_2 (VEX_LEN_383E_P_2 + 1) #define VEX_LEN_3840_P_2 (VEX_LEN_383F_P_2 + 1) #define VEX_LEN_3841_P_2 (VEX_LEN_3840_P_2 + 1) -#define VEX_LEN_3A06_P_2 (VEX_LEN_3841_P_2 + 1) +#define VEX_LEN_38DB_P_2 (VEX_LEN_3841_P_2 + 1) +#define VEX_LEN_38DC_P_2 (VEX_LEN_38DB_P_2 + 1) +#define VEX_LEN_38DD_P_2 (VEX_LEN_38DC_P_2 + 1) +#define VEX_LEN_38DE_P_2 (VEX_LEN_38DD_P_2 + 1) +#define VEX_LEN_38DF_P_2 (VEX_LEN_38DE_P_2 + 1) +#define VEX_LEN_3A06_P_2 (VEX_LEN_38DF_P_2 + 1) #define VEX_LEN_3A0A_P_2 (VEX_LEN_3A06_P_2 + 1) #define VEX_LEN_3A0B_P_2 (VEX_LEN_3A0A_P_2 + 1) #define VEX_LEN_3A0E_P_2 (VEX_LEN_3A0B_P_2 + 1) @@ -1229,6 +1240,7 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr) #define VEX_LEN_3A7B_P_2 (VEX_LEN_3A7A_P_2 + 1) #define VEX_LEN_3A7E_P_2 (VEX_LEN_3A7B_P_2 + 1) #define VEX_LEN_3A7F_P_2 (VEX_LEN_3A7E_P_2 + 1) +#define VEX_LEN_3ADF_P_2 (VEX_LEN_3A7F_P_2 + 1) typedef void (*op_rtn) (int bytemode, int sizeflag); @@ -4536,6 +4548,46 @@ static const struct dis386 prefix_table[][4] = { { "(bad)", { XX } }, }, + /* PREFIX_VEX_38DB */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_38DB_P_2) }, + { "(bad)", { XX } }, + }, + + /* PREFIX_VEX_38DC */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_38DC_P_2) }, + { "(bad)", { XX } }, + }, + + /* PREFIX_VEX_38DD */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_38DD_P_2) }, + { "(bad)", { XX } }, + }, + + /* PREFIX_VEX_38DE */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_38DE_P_2) }, + { "(bad)", { XX } }, + }, + + /* PREFIX_VEX_38DF */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_38DF_P_2) }, + { "(bad)", { XX } }, + }, + /* PREFIX_VEX_3A04 */ { { "(bad)", { XX } }, @@ -4951,6 +5003,14 @@ static const struct dis386 prefix_table[][4] = { { VEX_LEN_TABLE (VEX_LEN_3A7F_P_2) }, { "(bad)", { XX } }, }, + + /* PREFIX_VEX_3ADF */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { VEX_LEN_TABLE (VEX_LEN_3ADF_P_2) }, + { "(bad)", { XX } }, + }, }; static const struct dis386 x86_64_table[][2] = { @@ -7413,11 +7473,11 @@ static const struct dis386 vex_table[][256] = { { "(bad)", { XX } }, { "(bad)", { XX } }, { "(bad)", { XX } }, - { "(bad)", { XX } }, - { "(bad)", { XX } }, - { "(bad)", { XX } }, - { "(bad)", { XX } }, - { "(bad)", { XX } }, + { PREFIX_TABLE (PREFIX_VEX_38DB) }, + { PREFIX_TABLE (PREFIX_VEX_38DC) }, + { PREFIX_TABLE (PREFIX_VEX_38DD) }, + { PREFIX_TABLE (PREFIX_VEX_38DE) }, + { PREFIX_TABLE (PREFIX_VEX_38DF) }, /* e0 */ { "(bad)", { XX } }, { "(bad)", { XX } }, @@ -7708,7 +7768,7 @@ static const struct dis386 vex_table[][256] = { { "(bad)", { XX } }, { "(bad)", { XX } }, { "(bad)", { XX } }, - { "(bad)", { XX } }, + { PREFIX_TABLE (PREFIX_VEX_3ADF) }, /* e0 */ { "(bad)", { XX } }, { "(bad)", { XX } }, @@ -8757,6 +8817,36 @@ static const struct dis386 vex_len_table[][2] = { { "(bad)", { XX } }, }, + /* VEX_LEN_38DB_P_2 */ + { + { "vaesimc", { XM, EXx } }, + { "(bad)", { XX } }, + }, + + /* VEX_LEN_38DC_P_2 */ + { + { "vaesenc", { XM, Vex128, EXx } }, + { "(bad)", { XX } }, + }, + + /* VEX_LEN_38DD_P_2 */ + { + { "vaesenclast", { XM, Vex128, EXx } }, + { "(bad)", { XX } }, + }, + + /* VEX_LEN_38DE_P_2 */ + { + { "vaesdec", { XM, Vex128, EXx } }, + { "(bad)", { XX } }, + }, + + /* VEX_LEN_38DF_P_2 */ + { + { "vaesdeclast", { XM, Vex128, EXx } }, + { "(bad)", { XX } }, + }, + /* VEX_LEN_3A06_P_2 */ { { "(bad)", { XX } }, @@ -8930,6 +9020,12 @@ static const struct dis386 vex_len_table[][2] = { { "vfnmsubsd", { XMVexW, Vex128FMA, EXqVexW, EXqVexW, VexI4 } }, { "(bad)", { XX } }, }, + + /* VEX_LEN_3ADF_P_2 */ + { + { "vaeskeygenassist", { XM, EXx, Ib } }, + { "(bad)", { XX } }, + }, }; static const struct dis386 mod_table[][2] = { diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl index 64fe5bf3a43..b0260460865 100644 --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -1730,11 +1730,17 @@ xsetbv, 0, 0xf01, 0xd1, 2, CpuXsave, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ // AES instructions. +aesdec, 2, 0x66de, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aesdec, 2, 0x660f38de, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +aesdeclast, 2, 0x66df, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aesdeclast, 2, 0x660f38df, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +aesenc, 2, 0x66dc, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aesenc, 2, 0x660f38dc, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +aesenclast, 2, 0x66dd, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aesenclast, 2, 0x660f38dd, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +aesimc, 2, 0x66db, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aesimc, 2, 0x660f38db, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +aeskeygenassist, 3, 0x66df, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F3A|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|SSE2AVX, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } aeskeygenassist, 3, 0x660f3adf, None, 3, CpuAES, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } // PCLMUL @@ -2362,6 +2368,15 @@ vxorps, 3, 0x57, None, 1, CpuAVX, Modrm|Vex|Vex0F|Vex256|VexNDS|IgnoreSize|No_bS vzeroall, 0, 0x77, None, 1, CpuAVX, Vex|Vex0F|Vex256|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 } vzeroupper, 0, 0x77, None, 1, CpuAVX, Vex|Vex0F|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 } +// AES + AVX + +vaesdec, 3, 0x66de, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM } +vaesdeclast, 3, 0x66df, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM } +vaesenc, 3, 0x66dc, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM } +vaesenclast, 3, 0x66dd, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|VexNDS|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM } +vaesimc, 2, 0x66db, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F38|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } +vaeskeygenassist, 3, 0x66df, None, 1, CpuAVX|CpuAES, Modrm|Vex|Vex0F3A|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Imm8, Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM } + // FMA instructions vfmaddpd, 4, 0x6669, None, 1, CpuFMA, Modrm|Vex|Vex0F3A|VexNDS|VexW1|Vex3Sources|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|VexImmExt, {Xmmword|Unspecified|BaseIndex|Disp8|Disp16|Disp32|Disp32S|RegXMM, RegXMM, RegXMM, RegXMM } diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h index 430a1d190f7..a176145c929 100644 --- a/opcodes/i386-tbl.h +++ b/opcodes/i386-tbl.h @@ -16183,6 +16183,18 @@ const template i386_optab[] = { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aesdec", 2, 0x66de, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aesdec", 2, 0x660f38de, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -16195,6 +16207,18 @@ const template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aesdeclast", 2, 0x66df, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aesdeclast", 2, 0x660f38df, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -16207,6 +16231,18 @@ const template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aesenc", 2, 0x66dc, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aesenc", 2, 0x660f38dc, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -16219,6 +16255,18 @@ const template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aesenclast", 2, 0x66dd, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aesenclast", 2, 0x660f38dd, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -16231,6 +16279,18 @@ const template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aesimc", 2, 0x66db, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aesimc", 2, 0x660f38db, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -16243,6 +16303,21 @@ const template i386_optab[] = { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "aeskeygenassist", 3, 0x66df, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "aeskeygenassist", 3, 0x660f3adf, None, 3, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, @@ -25225,6 +25300,93 @@ const template i386_optab[] = { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }, + { "vaesdec", 3, 0x66de, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { "vaesdeclast", 3, 0x66df, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { "vaesenc", 3, 0x66dc, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { "vaesenclast", 3, 0x66dd, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { "vaesimc", 2, 0x66db, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { "vaeskeygenassist", 3, 0x66df, None, 1, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 } } } }, { "vfmaddpd", 4, 0x6669, None, 1, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 } }, -- 2.30.2