aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2010-01-15 18:58:14 +0000
committerDale Johannesen <dalej@apple.com>2010-01-15 18:58:14 +0000
commit3752d2fe34a8d576203f8034baeabb02e65c87bc (patch)
treebe092ba02d80b6fa6b191068a140e36e49bf8803 /lib
parent29ef9a21dd4df3e92d21f4d9edf612d8da67cfe1 (diff)
downloadexternal_llvm-3752d2fe34a8d576203f8034baeabb02e65c87bc.zip
external_llvm-3752d2fe34a8d576203f8034baeabb02e65c87bc.tar.gz
external_llvm-3752d2fe34a8d576203f8034baeabb02e65c87bc.tar.bz2
Revert 93499. After discussion with Chris we agreed
FrameIndexes should be lowered, but the same way as everything else (target dependent) rather than in a special hacked way. The lowering needs to be done for eventual purposes of Dwarf generation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93530 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/X86/AsmPrinter/X86MCInstLower.cpp20
-rw-r--r--lib/Target/X86/X86RegisterInfo.cpp9
2 files changed, 0 insertions, 29 deletions
diff --git a/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp b/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
index 9ee118c..a4939af 100644
--- a/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
+++ b/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
@@ -25,7 +25,6 @@
#include "llvm/Support/FormattedStream.h"
#include "llvm/Support/Mangler.h"
#include "llvm/ADT/SmallString.h"
-#include "llvm/Analysis/DebugInfo.h"
using namespace llvm;
@@ -421,25 +420,6 @@ void X86AsmPrinter::printInstructionThroughMCStreamer(const MachineInstr *MI) {
case TargetInstrInfo::GC_LABEL:
printLabel(MI);
return;
- case TargetInstrInfo::DEBUG_VALUE: {
- if (!VerboseAsm)
- return;
- O << '\t' << MAI->getCommentString() << "DEBUG_VALUE: ";
- // cast away const; DIetc do not take const operands for some reason
- DIVariable V((MDNode*)(MI->getOperand(2).getMetadata()));
- O << V.getName();
- O << " <- ";
- if (MI->getOperand(0).getType()==MachineOperand::MO_Register)
- printOperand(MI, 0);
- else {
- assert(MI->getOperand(0).getType()==MachineOperand::MO_Immediate);
- int64_t imm = MI->getOperand(0).getImm();
- O << '[' << ((imm<0) ? "EBP" : "ESP+") << imm << ']';
- }
- O << "+";
- printOperand(MI, 1);
- return;
- }
case TargetInstrInfo::INLINEASM:
printInlineAsm(MI);
return;
diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp
index 9bd96af..d96aafd 100644
--- a/lib/Target/X86/X86RegisterInfo.cpp
+++ b/lib/Target/X86/X86RegisterInfo.cpp
@@ -591,15 +591,6 @@ X86RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
int FrameIndex = MI.getOperand(i).getIndex();
unsigned BasePtr;
- // DEBUG_VALUE has a special representation, and is only robust enough to
- // represent SP(or BP) +- offset addressing modes. We rewrite the
- // FrameIndex to be a constant; implicitly positive constants are relative
- // to ESP and negative ones to EBP.
- if (MI.getOpcode()==TargetInstrInfo::DEBUG_VALUE) {
- MI.getOperand(i).ChangeToImmediate(getFrameIndexOffset(MF, FrameIndex));
- return 0;
- }
-
if (needsStackRealignment(MF))
BasePtr = (FrameIndex < 0 ? FramePtr : StackPtr);
else