2013-04-09 19:46:01 +00:00
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Instruction Selector Subtarget Control
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// This file defines a pass used to change the subtarget for the
|
|
|
|
// Mips Instruction selector.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
#include "MipsISelDAGToDAG.h"
|
|
|
|
#include "MipsModuleISelDAGToDAG.h"
|
|
|
|
#include "llvm/Support/Casting.h"
|
|
|
|
#include "llvm/Support/Debug.h"
|
|
|
|
#include "llvm/Support/raw_ostream.h"
|
|
|
|
|
2014-04-21 22:55:11 +00:00
|
|
|
#define DEBUG_TYPE "mips-isel"
|
|
|
|
|
2013-04-09 19:46:01 +00:00
|
|
|
namespace llvm {
|
|
|
|
|
|
|
|
bool MipsModuleDAGToDAGISel::runOnMachineFunction(MachineFunction &MF) {
|
|
|
|
DEBUG(errs() << "In MipsModuleDAGToDAGISel::runMachineFunction\n");
|
|
|
|
const_cast<MipsSubtarget&>(Subtarget).resetSubtarget(&MF);
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
char MipsModuleDAGToDAGISel::ID = 0;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
llvm::FunctionPass *llvm::createMipsModuleISelDag(MipsTargetMachine &TM) {
|
|
|
|
return new MipsModuleDAGToDAGISel(TM);
|
|
|
|
}
|
|
|
|
|
|
|
|
|