[llvm] [X86Disassembler] Handle situations when both EVEX.W = 1 and EVEX.pp = 01 (PR #103816)

Freddy Ye via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 28 22:23:55 PDT 2024


================
@@ -0,0 +1,74 @@
+# RUN: llvm-mc -triple x86_64 -disassemble %s | FileCheck %s --check-prefix=ATT
+# RUN: llvm-mc -triple x86_64 -disassemble -output-asm-variant=1 %s | FileCheck %s --check-prefix=INTEL
+
+# This test is to check below inherit:
+# IC_EVEX_W       -->    IC_EVEX_W_OPSIZE
+# IC_EVEX_W_B     -->    IC_EVEX_W_OPSIZE_B
+
----------------
FreddyLeaf wrote:

I tested and found they are already correctly handled:
```
$ llvm-mc -disassemble disas.txt                   
        {nf}    addq    $123, %r9
        {nf}    addq    $123, %r9 
        {nf}    addq    $123, %r9, %r10
        {nf}    addq    $123, %r9, %r10
$ cat disas.txt    
0x62,0xd4,0xfc,0x0c,0x83,0xc1,0x7b
0x62,0xd4,0xfd,0x0c,0x83,0xc1,0x7b

0x62,0xd4,0xac,0x1c,0x83,0xc1,0x7b
0x62,0xd4,0xad,0x1c,0x83,0xc1,0x7b
```
Probably because there is no `IC_EVEX_W_OPSIZE_NF` and `IC_EVEX_W_OPSIZE_B_NF`


https://github.com/llvm/llvm-project/pull/103816


More information about the llvm-commits mailing list