summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/SparcV9
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-03-23 05:43:16 +0000
committerChris Lattner <sabre@nondot.org>2006-03-23 05:43:16 +0000
commit6f95ab7abbdaac36d1781d05a96df8a15859c2bf (patch)
treef2e31b79eb445b3174b41f06caed721387cba49f /llvm/lib/Target/SparcV9
parenta4dd9bb63d768f1d8b5451ff9d9921346cab1346 (diff)
downloadbcm5719-llvm-6f95ab7abbdaac36d1781d05a96df8a15859c2bf.tar.gz
bcm5719-llvm-6f95ab7abbdaac36d1781d05a96df8a15859c2bf.zip
Eliminate IntrinsicLowering from TargetMachine.
Make the CBE and V9 backends create their own, since they're the only ones that use it. llvm-svn: 26974
Diffstat (limited to 'llvm/lib/Target/SparcV9')
-rw-r--r--llvm/lib/Target/SparcV9/SparcV9BurgISel.cpp3
-rw-r--r--llvm/lib/Target/SparcV9/SparcV9TargetMachine.cpp6
-rw-r--r--llvm/lib/Target/SparcV9/SparcV9TargetMachine.h3
3 files changed, 5 insertions, 7 deletions
diff --git a/llvm/lib/Target/SparcV9/SparcV9BurgISel.cpp b/llvm/lib/Target/SparcV9/SparcV9BurgISel.cpp
index 1c03a9eb869..dcb99a7fb34 100644
--- a/llvm/lib/Target/SparcV9/SparcV9BurgISel.cpp
+++ b/llvm/lib/Target/SparcV9/SparcV9BurgISel.cpp
@@ -4356,6 +4356,7 @@ void GetInstructionsByRule(InstructionNode* subtreeRoot, int ruleForNode,
//==------------------------------------------------------------------------==//
bool V9ISel::runOnFunction(Function &F) {
+ DefaultIntrinsicLowering IL;
// First pass - Walk the function, lowering any calls to intrinsic functions
// which the instruction selector cannot handle.
for (Function::iterator BB = F.begin(), E = F.end(); BB != E; ++BB)
@@ -4376,7 +4377,7 @@ bool V9ISel::runOnFunction(Function &F) {
default:
// All other intrinsic calls we must lower.
Instruction *Before = CI->getPrev();
- Target.getIntrinsicLowering().LowerIntrinsicCall(CI);
+ IL.LowerIntrinsicCall(CI);
if (Before) { // Move iterator to instruction after call
I = Before; ++I;
} else {
diff --git a/llvm/lib/Target/SparcV9/SparcV9TargetMachine.cpp b/llvm/lib/Target/SparcV9/SparcV9TargetMachine.cpp
index 0748018682d..a0d76bb4372 100644
--- a/llvm/lib/Target/SparcV9/SparcV9TargetMachine.cpp
+++ b/llvm/lib/Target/SparcV9/SparcV9TargetMachine.cpp
@@ -17,7 +17,6 @@
#include "llvm/PassManager.h"
#include "llvm/Assembly/PrintModulePass.h"
#include "llvm/CodeGen/InstrScheduling.h"
-#include "llvm/CodeGen/IntrinsicLowering.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/Target/TargetOptions.h"
@@ -147,10 +146,9 @@ FunctionPass *llvm::createSparcV9MachineCodeDestructionPass() {
}
-SparcV9TargetMachine::SparcV9TargetMachine(const Module &M,
- IntrinsicLowering *il,
+SparcV9TargetMachine::SparcV9TargetMachine(const Module &M,
const std::string &FS)
- : TargetMachine("UltraSparcV9-Native", il, false),
+ : TargetMachine("UltraSparcV9-Native", false),
schedInfo(*this),
regInfo(*this),
frameInfo(*this),
diff --git a/llvm/lib/Target/SparcV9/SparcV9TargetMachine.h b/llvm/lib/Target/SparcV9/SparcV9TargetMachine.h
index 1f832825b2a..3bbb6a4d695 100644
--- a/llvm/lib/Target/SparcV9/SparcV9TargetMachine.h
+++ b/llvm/lib/Target/SparcV9/SparcV9TargetMachine.h
@@ -32,8 +32,7 @@ class SparcV9TargetMachine : public TargetMachine {
SparcV9FrameInfo frameInfo;
SparcV9JITInfo jitInfo;
public:
- SparcV9TargetMachine(const Module &M, IntrinsicLowering *IL,
- const std::string &FS);
+ SparcV9TargetMachine(const Module &M, const std::string &FS);
virtual const TargetInstrInfo *getInstrInfo() const { return &instrInfo; }
virtual const TargetSchedInfo *getSchedInfo() const { return &schedInfo; }
OpenPOWER on IntegriCloud