Skip to content

Commit fa49d1a

Browse files
author
Jim Grosbach
committed
ARM64: Extended addressing mode source reg is 64-bit.
The canonical form for the extended addressing mode (e.g., "[x1, w2, uxtw brson#3]" is for the MCInst to have the second register be the full 64-bit GPR64 register class. The instruction printer cleans up the output for display to show the 32-bit register instead, per the specification. This simplifies 205893 now that the aliasing is handled in the printer in 206495 so that the codegen path and the disassembler path give the same MCInst form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206797 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent e1c0863 commit fa49d1a

File tree

1 file changed

+1
-5
lines changed

1 file changed

+1
-5
lines changed

lib/Target/ARM64/Disassembler/ARM64Disassembler.cpp

+1-5
Original file line numberDiff line numberDiff line change
@@ -1182,11 +1182,7 @@ static DecodeStatus DecodeRegOffsetLdStInstruction(llvm::MCInst &Inst,
11821182
}
11831183

11841184
DecodeGPR64spRegisterClass(Inst, Rn, Addr, Decoder);
1185-
1186-
if ((extendHi & 0x3) == 0x3)
1187-
DecodeGPR64RegisterClass(Inst, Rm, Addr, Decoder);
1188-
else
1189-
DecodeGPR32RegisterClass(Inst, Rm, Addr, Decoder);
1185+
DecodeGPR64RegisterClass(Inst, Rm, Addr, Decoder);
11901186

11911187
Inst.addOperand(MCOperand::CreateImm(extend));
11921188
return Success;

0 commit comments

Comments
 (0)