mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-10-06 14:57:41 +00:00
Remove Offset from ExternalSybmol MachineOperands, this is unused (and at least partly unsupported, in X86 encoding at least).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80726 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8bff7c960c
commit
31e2c7b4c1
@ -116,9 +116,8 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
const MachineInstrBuilder &addExternalSymbol(const char *FnName,
|
const MachineInstrBuilder &addExternalSymbol(const char *FnName,
|
||||||
int64_t Offset = 0,
|
|
||||||
unsigned char TargetFlags = 0) const {
|
unsigned char TargetFlags = 0) const {
|
||||||
MI->addOperand(MachineOperand::CreateES(FnName, Offset, TargetFlags));
|
MI->addOperand(MachineOperand::CreateES(FnName, TargetFlags));
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -432,11 +432,11 @@ public:
|
|||||||
Op.setTargetFlags(TargetFlags);
|
Op.setTargetFlags(TargetFlags);
|
||||||
return Op;
|
return Op;
|
||||||
}
|
}
|
||||||
static MachineOperand CreateES(const char *SymName, int64_t Offset = 0,
|
static MachineOperand CreateES(const char *SymName,
|
||||||
unsigned char TargetFlags = 0) {
|
unsigned char TargetFlags = 0) {
|
||||||
MachineOperand Op(MachineOperand::MO_ExternalSymbol);
|
MachineOperand Op(MachineOperand::MO_ExternalSymbol);
|
||||||
Op.Contents.OffsetedInfo.Val.SymbolName = SymName;
|
Op.Contents.OffsetedInfo.Val.SymbolName = SymName;
|
||||||
Op.setOffset(Offset);
|
Op.setOffset(0); // Offset is always 0.
|
||||||
Op.setTargetFlags(TargetFlags);
|
Op.setTargetFlags(TargetFlags);
|
||||||
return Op;
|
return Op;
|
||||||
}
|
}
|
||||||
|
@ -319,7 +319,7 @@ void ScheduleDAGSDNodes::AddOperand(MachineInstr *MI, SDValue Op,
|
|||||||
MI->addOperand(MachineOperand::CreateCPI(Idx, Offset,
|
MI->addOperand(MachineOperand::CreateCPI(Idx, Offset,
|
||||||
CP->getTargetFlags()));
|
CP->getTargetFlags()));
|
||||||
} else if (ExternalSymbolSDNode *ES = dyn_cast<ExternalSymbolSDNode>(Op)) {
|
} else if (ExternalSymbolSDNode *ES = dyn_cast<ExternalSymbolSDNode>(Op)) {
|
||||||
MI->addOperand(MachineOperand::CreateES(ES->getSymbol(), 0,
|
MI->addOperand(MachineOperand::CreateES(ES->getSymbol(),
|
||||||
ES->getTargetFlags()));
|
ES->getTargetFlags()));
|
||||||
} else {
|
} else {
|
||||||
assert(Op.getValueType() != MVT::Other &&
|
assert(Op.getValueType() != MVT::Other &&
|
||||||
|
@ -3237,7 +3237,7 @@ unsigned X86InstrInfo::getGlobalBaseReg(MachineFunction *MF) const {
|
|||||||
GlobalBaseReg = RegInfo.createVirtualRegister(X86::GR32RegisterClass);
|
GlobalBaseReg = RegInfo.createVirtualRegister(X86::GR32RegisterClass);
|
||||||
// Generate addl $__GLOBAL_OFFSET_TABLE_ + [.-piclabel], %some_register
|
// Generate addl $__GLOBAL_OFFSET_TABLE_ + [.-piclabel], %some_register
|
||||||
BuildMI(FirstMBB, MBBI, DL, TII->get(X86::ADD32ri), GlobalBaseReg)
|
BuildMI(FirstMBB, MBBI, DL, TII->get(X86::ADD32ri), GlobalBaseReg)
|
||||||
.addReg(PC).addExternalSymbol("_GLOBAL_OFFSET_TABLE_", 0,
|
.addReg(PC).addExternalSymbol("_GLOBAL_OFFSET_TABLE_",
|
||||||
X86II::MO_GOT_ABSOLUTE_ADDRESS);
|
X86II::MO_GOT_ABSOLUTE_ADDRESS);
|
||||||
} else {
|
} else {
|
||||||
GlobalBaseReg = PC;
|
GlobalBaseReg = PC;
|
||||||
|
Loading…
Reference in New Issue
Block a user