The single check for N64 inside MipsDisassemblerBase's subclasses is actually wrong. It should be testing for FeatureGP64bit.There are no functional changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224339 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Vladimir Medic 2014-12-16 15:29:12 +00:00
parent 78f6aad800
commit ca932f503b

View File

@ -36,15 +36,15 @@ public:
MipsDisassemblerBase(const MCSubtargetInfo &STI, MCContext &Ctx, MipsDisassemblerBase(const MCSubtargetInfo &STI, MCContext &Ctx,
bool IsBigEndian) bool IsBigEndian)
: MCDisassembler(STI, Ctx), : MCDisassembler(STI, Ctx),
IsN64(STI.getFeatureBits() & Mips::FeatureN64), IsGP64Bit(STI.getFeatureBits() & Mips::FeatureGP64Bit),
IsBigEndian(IsBigEndian) {} IsBigEndian(IsBigEndian) {}
virtual ~MipsDisassemblerBase() {} virtual ~MipsDisassemblerBase() {}
bool isN64() const { return IsN64; } bool isGP64Bit() const { return IsGP64Bit; }
private: private:
bool IsN64; bool IsGP64Bit;
protected: protected:
bool IsBigEndian; bool IsBigEndian;
}; };
@ -974,7 +974,7 @@ static DecodeStatus DecodePtrRegisterClass(MCInst &Inst,
unsigned RegNo, unsigned RegNo,
uint64_t Address, uint64_t Address,
const void *Decoder) { const void *Decoder) {
if (static_cast<const MipsDisassembler *>(Decoder)->isN64()) if (static_cast<const MipsDisassembler *>(Decoder)->isGP64Bit())
return DecodeGPR64RegisterClass(Inst, RegNo, Address, Decoder); return DecodeGPR64RegisterClass(Inst, RegNo, Address, Decoder);
return DecodeGPR32RegisterClass(Inst, RegNo, Address, Decoder); return DecodeGPR32RegisterClass(Inst, RegNo, Address, Decoder);