mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-16 14:31:59 +00:00
Fix miscompilations in the SparcV9 backend that were induced by this patch:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041011/019311.html git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17130 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7d0974b9a0
commit
4caf5d563d
@ -153,10 +153,20 @@ private:
|
||||
}
|
||||
|
||||
MachineOperand(Value *V, MachineOperandType OpTy, UseType UseTy,
|
||||
bool isPCRelative = false)
|
||||
: flags(UseTy | (isPCRelative?PCRELATIVE:0)), opType(OpTy) {
|
||||
assert(OpTy != MachineOperand::MO_GlobalAddress);
|
||||
zeroContents();
|
||||
contents.value = V;
|
||||
extra.regNum = -1;
|
||||
}
|
||||
|
||||
MachineOperand(GlobalValue *V, MachineOperandType OpTy, UseType UseTy,
|
||||
bool isPCRelative = false, int Offset = 0)
|
||||
: flags(UseTy | (isPCRelative?PCRELATIVE:0)), opType(OpTy) {
|
||||
assert(OpTy == MachineOperand::MO_GlobalAddress);
|
||||
zeroContents ();
|
||||
contents.value = V;
|
||||
contents.value = (Value*)V;
|
||||
extra.offset = Offset;
|
||||
}
|
||||
|
||||
@ -642,7 +652,7 @@ public:
|
||||
assert(!OperandsComplete() &&
|
||||
"Trying to add an operand to a machine instr that is already done!");
|
||||
operands.push_back(
|
||||
MachineOperand((Value*)GV, MachineOperand::MO_GlobalAddress,
|
||||
MachineOperand(GV, MachineOperand::MO_GlobalAddress,
|
||||
MachineOperand::Use, isPCRelative, Offset));
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user