http://llvm.org/bugs/show_bug.cgi?id=10700

           Summary: [x86 disassembler] arpl should not be possible with
                    64-bit target
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: X86
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected]


From the "Intel® 64 and IA-32 Architectures Software Developer’s Manual
Volume 2 (2A & 2B): Instruction Set Reference, A-Z", p. 3-75:
ARPL—Adjust RPL Field of Segment Selector
63 /r
"This instruction executes as described in compatibility mode and legacy mode.
It is not encodable in 64-bit mode."

P. 3-730 shows the encoding in 64-bit mode:
MOVSX/MOVSXD—Move with Sign-Extension
REX.W** + 63 /r

With llvm-mc built from trunk revision 135913:
$ echo '0x63 0xc0'| ./llvm-mc -disassemble -triple="x86_64"
        arpl    %ax, %ax

With the 64-bit target set, this should have disassembled as 'movsx'.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to