mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-25 10:27:04 +00:00
get lazy JITing working. Some of shootout runs now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22538 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -178,6 +178,7 @@ int AlphaCodeEmitter::getMachineOpValue(MachineInstr &MI, MachineOperand &MO) {
|
||||
MO.getGlobal()->isExternal()) );
|
||||
unsigned Reloc = 0;
|
||||
int Offset = 0;
|
||||
bool useGOT = false;
|
||||
switch (MI.getOpcode()) {
|
||||
case Alpha::LDLr:
|
||||
case Alpha::LDQr:
|
||||
@@ -193,6 +194,7 @@ int AlphaCodeEmitter::getMachineOpValue(MachineInstr &MI, MachineOperand &MO) {
|
||||
break;
|
||||
case Alpha::LDQl:
|
||||
Reloc = Alpha::reloc_literal;
|
||||
useGOT = true;
|
||||
break;
|
||||
case Alpha::LDAg:
|
||||
case Alpha::LDAHg:
|
||||
@@ -206,7 +208,7 @@ int AlphaCodeEmitter::getMachineOpValue(MachineInstr &MI, MachineOperand &MO) {
|
||||
if (MO.isGlobalAddress())
|
||||
MCE.addRelocation(MachineRelocation((unsigned)MCE.getCurrentPCOffset(),
|
||||
Reloc, MO.getGlobal(), Offset,
|
||||
true, true));
|
||||
false, useGOT));
|
||||
else if (MO.isExternalSymbol())
|
||||
MCE.addRelocation(MachineRelocation((unsigned)MCE.getCurrentPCOffset(),
|
||||
Reloc, MO.getSymbolName(), Offset,
|
||||
|
||||
Reference in New Issue
Block a user