ARM encoder method needs the physical register number, not the enum.
authorJim Grosbach <grosbach@apple.com>
Fri, 2 Dec 2011 22:01:25 +0000 (22:01 +0000)
committerJim Grosbach <grosbach@apple.com>
Fri, 2 Dec 2011 22:01:25 +0000 (22:01 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145711 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp

index 865c3e22b8424f3899a038686c5afa98950390a9..c38a882afdb017f33e796e355b09bd24156d829a 100644 (file)
@@ -1412,7 +1412,7 @@ getAddrMode6OffsetOpValue(const MCInst &MI, unsigned Op,
                           SmallVectorImpl<MCFixup> &Fixups) const {
   const MCOperand &MO = MI.getOperand(Op);
   if (MO.getReg() == 0) return 0x0D;
-  return MO.getReg();
+  return getARMRegisterNumbering(MO.getReg());
 }
 
 unsigned ARMMCCodeEmitter::