mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[GlobalISel] Fix compiler warnings and make assert assert something.
llvm-svn: 295827
This commit is contained in:
parent
da1fd33d4e
commit
a0254ce06b
@ -37,10 +37,9 @@ using namespace llvm;
|
||||
|
||||
#include "X86GenGlobalISel.inc"
|
||||
|
||||
X86InstructionSelector::X86InstructionSelector(const X86TargetMachine &TM,
|
||||
const X86Subtarget &STI,
|
||||
X86InstructionSelector::X86InstructionSelector(const X86Subtarget &STI,
|
||||
const X86RegisterBankInfo &RBI)
|
||||
: InstructionSelector(), TM(TM), STI(STI), TII(*STI.getInstrInfo()),
|
||||
: InstructionSelector(), TII(*STI.getInstrInfo()),
|
||||
TRI(*STI.getRegisterInfo()), RBI(RBI) {}
|
||||
|
||||
// FIXME: This should be target-independent, inferred from the types declared
|
||||
@ -70,6 +69,7 @@ static bool selectCopy(MachineInstr &I, const TargetInstrInfo &TII,
|
||||
|
||||
const RegisterBank &RegBank = *RBI.getRegBank(DstReg, MRI, TRI);
|
||||
const unsigned DstSize = MRI.getType(DstReg).getSizeInBits();
|
||||
(void)DstSize;
|
||||
unsigned SrcReg = I.getOperand(1).getReg();
|
||||
const unsigned SrcSize = RBI.getSizeInBits(SrcReg, MRI, TRI);
|
||||
(void)SrcSize;
|
||||
@ -124,10 +124,8 @@ bool X86InstructionSelector::select(MachineInstr &I) const {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (I.getNumOperands() != I.getNumExplicitOperands()) {
|
||||
assert("Generic instruction has unexpected implicit operands\n");
|
||||
return false;
|
||||
}
|
||||
assert(I.getNumOperands() == I.getNumExplicitOperands() &&
|
||||
"Generic instruction has unexpected implicit operands\n");
|
||||
|
||||
return selectImpl(I);
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ class X86TargetMachine;
|
||||
|
||||
class X86InstructionSelector : public InstructionSelector {
|
||||
public:
|
||||
X86InstructionSelector(const X86TargetMachine &TM, const X86Subtarget &STI,
|
||||
X86InstructionSelector(const X86Subtarget &STI,
|
||||
const X86RegisterBankInfo &RBI);
|
||||
|
||||
bool select(MachineInstr &I) const override;
|
||||
@ -35,8 +35,6 @@ private:
|
||||
/// the patterns that don't require complex C++.
|
||||
bool selectImpl(MachineInstr &I) const;
|
||||
|
||||
const X86TargetMachine &TM;
|
||||
const X86Subtarget &STI;
|
||||
const X86InstrInfo &TII;
|
||||
const X86RegisterInfo &TRI;
|
||||
const X86RegisterBankInfo &RBI;
|
||||
|
@ -284,7 +284,7 @@ X86TargetMachine::getSubtargetImpl(const Function &F) const {
|
||||
|
||||
auto *RBI = new X86RegisterBankInfo(*I->getRegisterInfo());
|
||||
GISel->RegBankInfo.reset(RBI);
|
||||
GISel->InstSelector.reset(new X86InstructionSelector(*this, *I, *RBI));
|
||||
GISel->InstSelector.reset(new X86InstructionSelector(*I, *RBI));
|
||||
|
||||
#endif
|
||||
I->setGISelAccessor(*GISel);
|
||||
|
Loading…
x
Reference in New Issue
Block a user