Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Given this `data.txt` file that includes all encodings from new end2end tests:
- ```
- c5f970ffb1
- c4e37bf010ff
- c4e3fbf010ff
- c5f970d1ff
- c5fd70d1ff
- c5fa70d1ff
- c5fe70d1ff
- c5fb70d1ff
- c5ff70d1ff
- c4e37909d1ff
- c4e37d08d1ff
- c5e972f1ff
- c5ed72f1ff
- c5e973f9ff
- c5ed73f9ff
- c5e973f1ff
- c5ed73f1ff
- c5e972d1ff
- c5ed72d1ff
- c5e973d9ff
- c5ed73d9ff
- c5e973d1ff
- c5ed73d1ff
- c4e3791508ff
- c4e37915c8ff
- c4e37d19caff
- c4e37d39caff
- c4e379dfd1ff
- c4e37961d1ff
- c4e37960d1ff
- c4e37963d1ff
- c4e37962d1ff
- c4e3fd01d1ff
- c4e37905d1ff
- c4e37d05d1ff
- c4e37904d1ff
- c4e37d04d1ff
- c4e3791dcaff
- c4e37d1dcaff
- c5e971f1ff
- c5ed71f1ff
- c5e972e1ff
- c5ed72e1ff
- c5e971e1ff
- c5ed71e1ff
- c5f171d1ff
- c5ed71d1ff
- c4e37917c8ff
- c4e37914c8ff
- c4e37916c8ff
- c4e3f916c8ff
- ```
- ```bash
- ./xed -64 -A -ih data.txt
- XDIS 0: AVX AVX C5F970FFB1 vpshufd $0xb1, %xmm7, %xmm7
- XDIS 5: BMI2 BMI2 C4E37BF010FF rorxl $0xff, (%rax), %edx
- XDIS b: BMI2 BMI2 C4E3FBF010FF rorxq $0xff, (%rax), %rdx
- XDIS 11: AVX AVX C5F970D1FF vpshufd $0xff, %xmm1, %xmm2
- XDIS 16: AVX2 AVX2 C5FD70D1FF vpshufd $0xff, %ymm1, %ymm2
- XDIS 1b: AVX AVX C5FA70D1FF vpshufhw $0xff, %xmm1, %xmm2
- XDIS 20: AVX2 AVX2 C5FE70D1FF vpshufhw $0xff, %ymm1, %ymm2
- XDIS 25: AVX AVX C5FB70D1FF vpshuflw $0xff, %xmm1, %xmm2
- XDIS 2a: AVX2 AVX2 C5FF70D1FF vpshuflw $0xff, %ymm1, %ymm2
- XDIS 2f: AVX AVX C4E37909D1FF vroundpd $0xff, %xmm1, %xmm2
- XDIS 35: AVX AVX C4E37D08D1FF vroundps $0xff, %ymm1, %ymm2
- XDIS 3b: AVX AVX C5E972F1FF vpslld $0xff, %xmm1, %xmm2
- XDIS 40: AVX2 AVX2 C5ED72F1FF vpslld $0xff, %ymm1, %ymm2
- XDIS 45: AVX AVX C5E973F9FF vpslldq $0xff, %xmm1, %xmm2
- XDIS 4a: AVX2 AVX2 C5ED73F9FF vpslldq $0xff, %ymm1, %ymm2
- XDIS 4f: AVX AVX C5E973F1FF vpsllq $0xff, %xmm1, %xmm2
- XDIS 54: AVX2 AVX2 C5ED73F1FF vpsllq $0xff, %ymm1, %ymm2
- XDIS 59: AVX AVX C5E972D1FF vpsrld $0xff, %xmm1, %xmm2
- XDIS 5e: AVX2 AVX2 C5ED72D1FF vpsrld $0xff, %ymm1, %ymm2
- XDIS 63: AVX AVX C5E973D9FF vpsrldq $0xff, %xmm1, %xmm2
- XDIS 68: AVX2 AVX2 C5ED73D9FF vpsrldq $0xff, %ymm1, %ymm2
- XDIS 6d: AVX AVX C5E973D1FF vpsrlq $0xff, %xmm1, %xmm2
- XDIS 72: AVX2 AVX2 C5ED73D1FF vpsrlq $0xff, %ymm1, %ymm2
- XDIS 77: AVX AVX C4E3791508FF vpextrww $0xff, %xmm1, (%rax)
- XDIS 7d: AVX AVX C4E37915C8FF vpextrw $0xff, %xmm1, %eax
- XDIS 83: AVX AVX C4E37D19CAFF vextractf128 $0xff, %ymm1, %xmm2
- XDIS 89: AVX2 AVX2 C4E37D39CAFF vextracti128 $0xff, %ymm1, %xmm2
- XDIS 8f: AES AVXAES C4E379DFD1FF vaeskeygenassist $0xff, %xmm1, %xmm2
- XDIS 95: STTNI AVX C4E37961D1FF vpcmpestri $0xff, %xmm1, %xmm2
- XDIS 9b: STTNI AVX C4E37960D1FF vpcmpestrm $0xff, %xmm1, %xmm2
- XDIS a1: STTNI AVX C4E37963D1FF vpcmpistri $0xff, %xmm1, %xmm2
- XDIS a7: STTNI AVX C4E37962D1FF vpcmpistrm $0xff, %xmm1, %xmm2
- XDIS ad: AVX2 AVX2 C4E3FD01D1FF vpermpd $0xff, %ymm1, %ymm2
- XDIS b3: AVX AVX C4E37905D1FF vpermilpd $0xff, %xmm1, %xmm2
- XDIS b9: AVX AVX C4E37D05D1FF vpermilpd $0xff, %ymm1, %ymm2
- XDIS bf: AVX AVX C4E37904D1FF vpermilps $0xff, %xmm1, %xmm2
- XDIS c5: AVX AVX C4E37D04D1FF vpermilps $0xff, %ymm1, %ymm2
- XDIS cb: CONVERT F16C C4E3791DCAFF vcvtps2ph $0xff, %xmm1, %xmm2
- XDIS d1: CONVERT F16C C4E37D1DCAFF vcvtps2ph $0xff, %ymm1, %xmm2
- XDIS d7: AVX AVX C5E971F1FF vpsllw $0xff, %xmm1, %xmm2
- XDIS dc: AVX2 AVX2 C5ED71F1FF vpsllw $0xff, %ymm1, %ymm2
- XDIS e1: AVX AVX C5E972E1FF vpsrad $0xff, %xmm1, %xmm2
- XDIS e6: AVX2 AVX2 C5ED72E1FF vpsrad $0xff, %ymm1, %ymm2
- XDIS eb: AVX AVX C5E971E1FF vpsraw $0xff, %xmm1, %xmm2
- XDIS f0: AVX2 AVX2 C5ED71E1FF vpsraw $0xff, %ymm1, %ymm2
- XDIS f5: AVX AVX C5F171D1FF vpsrlw $0xff, %xmm1, %xmm1
- XDIS fa: AVX2 AVX2 C5ED71D1FF vpsrlw $0xff, %ymm1, %ymm2
- XDIS ff: AVX AVX C4E37917C8FF vextractps $0xff, %xmm1, %eax
- XDIS 105: AVX AVX C4E37914C8FF vpextrb $0xff, %xmm1, %eax
- XDIS 10b: AVX AVX C4E37916C8FF vpextrd $0xff, %xmm1, %eax
- XDIS 111: AVX AVX C4E3F916C8FF vpextrq $0xff, %xmm1, %rax
- # end of text section.
- # Errors: 0
- #XED3 DECODE STATS
- #Total DECODE cycles: 6103
- #Total instructions DECODE: 1
- #Total tail DECODE cycles: 484164
- #Total tail instructions DECODE: 51
- #Total cycles/instruction DECODE: 6103.00
- #Total tail cycles/instruction DECODE: 9493.41
- ```
- And with side-by-side comparison:
- ```
- C5F970FFB1 vpshufd $0xb1, %xmm7, %xmm7 // VPSHUFD $-79, X7, X7
- C4E37BF010FF rorxl $0xff, (%rax), %edx // RORXL $-1, (AX), DX
- C4E3FBF010FF rorxq $0xff, (%rax), %rdx // RORXQ $-1, (AX), DX
- C5F970D1FF vpshufd $0xff, %xmm1, %xmm2 // VPSHUFD $-1, X1, X2
- C5FD70D1FF vpshufd $0xff, %ymm1, %ymm2 // VPSHUFD $-1, Y1, Y2
- C5FA70D1FF vpshufhw $0xff, %xmm1, %xmm2 // VPSHUFHW $-1, X1, X2
- C5FE70D1FF vpshufhw $0xff, %ymm1, %ymm2 // VPSHUFHW $-1, Y1, Y2
- C5FB70D1FF vpshuflw $0xff, %xmm1, %xmm2 // VPSHUFLW $-1, X1, X2
- C5FF70D1FF vpshuflw $0xff, %ymm1, %ymm2 // VPSHUFLW $-1, Y1, Y2
- C4E37909D1FF vroundpd $0xff, %xmm1, %xmm2 // VROUNDPD $-1, X1, X2
- C4E37D08D1FF vroundps $0xff, %ymm1, %ymm2 // VROUNDPS $-1, Y1, Y2
- C5E972F1FF vpslld $0xff, %xmm1, %xmm2 // VPSLLD $-1, X1, X2
- C5ED72F1FF vpslld $0xff, %ymm1, %ymm2 // VPSLLD $-1, Y1, Y2
- C5E973F9FF vpslldq $0xff, %xmm1, %xmm2 // VPSLLDQ $-1, X1, X2
- C5ED73F9FF vpslldq $0xff, %ymm1, %ymm2 // VPSLLDQ $-1, Y1, Y2
- C5E973F1FF vpsllq $0xff, %xmm1, %xmm2 // VPSLLQ $-1, X1, X2
- C5ED73F1FF vpsllq $0xff, %ymm1, %ymm2 // VPSLLQ $-1, Y1, Y2
- C5E972D1FF vpsrld $0xff, %xmm1, %xmm2 // VPSRLD $-1, X1, X2
- C5ED72D1FF vpsrld $0xff, %ymm1, %ymm2 // VPSRLD $-1, Y1, Y2
- C5E973D9FF vpsrldq $0xff, %xmm1, %xmm2 // VPSRLDQ $-1, X1, X2
- C5ED73D9FF vpsrldq $0xff, %ymm1, %ymm2 // VPSRLDQ $-1, Y1, Y2
- C5E973D1FF vpsrlq $0xff, %xmm1, %xmm2 // VPSRLQ $-1, X1, X2
- C5ED73D1FF vpsrlq $0xff, %ymm1, %ymm2 // VPSRLQ $-1, Y1, Y2
- C4E3791508FF vpextrww $0xff, %xmm1, (%rax) // VPEXTRW $-1, X1, (AX
- C4E37915C8FF vpextrw $0xff, %xmm1, %eax // VPEXTRW $-1, X1, AX
- C4E37D19CAFF vextractf128 $0xff, %ymm1, %xmm2 // VEXTRACTF128 $-1, Y1, X2
- C4E37D39CAFF vextracti128 $0xff, %ymm1, %xmm2 // VEXTRACTI128 $-1, Y1, X2
- C4E379DFD1FF vaeskeygenassist $0xff, %xmm1, %xmm2 // VAESKEYGENASSIST $-1, X1, X2
- C4E37961D1FF vpcmpestri $0xff, %xmm1, %xmm2 // VPCMPESTRI $-1, X1, X2
- C4E37960D1FF vpcmpestrm $0xff, %xmm1, %xmm2 // VPCMPESTRM $-1, X1, X2
- C4E37963D1FF vpcmpistri $0xff, %xmm1, %xmm2 // VPCMPISTRI $-1, X1, X2
- C4E37962D1FF vpcmpistrm $0xff, %xmm1, %xmm2 // VPCMPISTRM $-1, X1, X2
- C4E3FD01D1FF vpermpd $0xff, %ymm1, %ymm2 // VPERMPD $-1, Y1, Y2
- C4E37905D1FF vpermilpd $0xff, %xmm1, %xmm2 // VPERMILPD $-1, X1, X2
- C4E37D05D1FF vpermilpd $0xff, %ymm1, %ymm2 // VPERMILPD $-1, Y1, Y2
- C4E37904D1FF vpermilps $0xff, %xmm1, %xmm2 // VPERMILPS $-1, X1, X2
- C4E37D04D1FF vpermilps $0xff, %ymm1, %ymm2 // VPERMILPS $-1, Y1, Y2
- C4E3791DCAFF vcvtps2ph $0xff, %xmm1, %xmm2 // VCVTPS2PH $-1, X1, X2
- C4E37D1DCAFF vcvtps2ph $0xff, %ymm1, %xmm2 // VCVTPS2PH $-1, Y1, X2
- C5E971F1FF vpsllw $0xff, %xmm1, %xmm2 // VPSLLW $-1, X1, X2
- C5ED71F1FF vpsllw $0xff, %ymm1, %ymm2 // VPSLLW $-1, Y1, Y2
- C5E972E1FF vpsrad $0xff, %xmm1, %xmm2 // VPSRAD $-1, X1, X2
- C5ED72E1FF vpsrad $0xff, %ymm1, %ymm2 // VPSRAD $-1, Y1, Y2
- C5E971E1FF vpsraw $0xff, %xmm1, %xmm2 // VPSRAW $-1, X1, X2
- C5ED71E1FF vpsraw $0xff, %ymm1, %ymm2 // VPSRAW $-1, Y1, Y2
- C5F171D1FF vpsrlw $0xff, %xmm1, %xmm1 // VPSRLW $-1, X1, X1
- C5ED71D1FF vpsrlw $0xff, %ymm1, %ymm2 // VPSRLW $-1, Y1, Y2
- C4E37917C8FF vextractps $0xff, %xmm1, %eax // VEXTRACTPS $-1, X1, AX
- C4E37914C8FF vpextrb $0xff, %xmm1, %eax // VPEXTRB $-1, X1, AX
- C4E37916C8FF vpextrd $0xff, %xmm1, %eax // VPEXTRD $-1, X1, AX
- C4E3F916C8FF vpextrq $0xff, %xmm1, %rax // VPEXTRQ $-1, X1, AX
- ```
Add Comment
Please, Sign In to add comment