aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target
diff options
context:
space:
mode:
authorVikram S. Adve <vadve@cs.uiuc.edu>2002-03-24 03:35:16 +0000
committerVikram S. Adve <vadve@cs.uiuc.edu>2002-03-24 03:35:16 +0000
commitd7e6becd3e6038ff2d278ed28f05eb914a6971eb (patch)
tree828f0680ff8b66b2b221fed24aa7ba0dd04f9f9a /lib/Target
parent585612e556f39a745551ca883d52afc52d3c4809 (diff)
downloadexternal_llvm-d7e6becd3e6038ff2d278ed28f05eb914a6971eb.zip
external_llvm-d7e6becd3e6038ff2d278ed28f05eb914a6971eb.tar.gz
external_llvm-d7e6becd3e6038ff2d278ed28f05eb914a6971eb.tar.bz2
Bug re-fix: put back MachineCodeForInstruction::get(*I).dropAllReferences().
Also re-enable instr. scheduling pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1966 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r--lib/Target/SparcV9/SparcV9TargetMachine.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/lib/Target/SparcV9/SparcV9TargetMachine.cpp b/lib/Target/SparcV9/SparcV9TargetMachine.cpp
index 666f61c..3eac9c0 100644
--- a/lib/Target/SparcV9/SparcV9TargetMachine.cpp
+++ b/lib/Target/SparcV9/SparcV9TargetMachine.cpp
@@ -234,15 +234,18 @@ struct FreeMachineCodeForMethod : public MethodPass {
static void freeMachineCode(Instruction *I) {
MachineCodeForInstruction::destroy(I);
}
-
+
bool runOnMethod(Method *M) {
for (Method::iterator MI = M->begin(), ME = M->end(); MI != ME; ++MI)
for (BasicBlock::iterator I = (*MI)->begin(), E = (*MI)->end();
I != E; ++I)
+ MachineCodeForInstruction::get(*I).dropAllReferences();
+
+ for (Method::iterator MI = M->begin(), ME = M->end(); MI != ME; ++MI)
+ for (BasicBlock::iterator I = (*MI)->begin(), E = (*MI)->end();
+ I != E; ++I)
freeMachineCode(*I);
-
- // Don't destruct MachineCodeForMethod - The global printer needs it
- //MachineCodeForMethod::destruct(M);
+
return false;
}
};
@@ -258,7 +261,7 @@ void UltraSparc::addPassesToEmitAssembly(PassManager &PM, std::ostream &Out) {
PM.add(new InstructionSelection(*this));
- //PM.add(createInstructionSchedulingWithSSAPass(*this));
+ PM.add(createInstructionSchedulingWithSSAPass(*this));
PM.add(getRegisterAllocator(*this));