diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/CodeGen/MachineFunction.h | 18 | ||||
| -rw-r--r-- | llvm/lib/CodeGen/MachineFunction.cpp | 29 | 
2 files changed, 27 insertions, 20 deletions
diff --git a/llvm/include/llvm/CodeGen/MachineFunction.h b/llvm/include/llvm/CodeGen/MachineFunction.h index 33f9efc281b..e429fc4f111 100644 --- a/llvm/include/llvm/CodeGen/MachineFunction.h +++ b/llvm/include/llvm/CodeGen/MachineFunction.h @@ -27,7 +27,8 @@ Pass *createMachineCodeConstructionPass(TargetMachine &Target);  Pass *createMachineCodeDestructionPass();  class MachineFunction : private Annotation { -  const Function *method; +  const Function *Fn; +  const TargetMachine &Target;    // List of machine basic blocks in function    iplist<MachineBasicBlock> BasicBlocks; @@ -47,8 +48,15 @@ class MachineFunction : private Annotation {    bool          automaticVarsAreaFrozen;  public: -  MachineFunction(const Function* function, -                  const TargetMachine& target); +  MachineFunction(const Function *Fn, const TargetMachine& target); + +  /// getFunction - Return the LLVM function that this machine code represents +  /// +  const Function *getFunction() const { return Fn; } + +  /// getTarget - Return the target machine this machine code is compiled with +  /// +  const TargetMachine &getTarget() const { return Target; }    // The next two methods are used to construct and to retrieve    // the MachineFunction object for the given method. @@ -57,8 +65,8 @@ public:    //                This should not be called before "construct()"    //                for a given Method.    //  -  static MachineFunction& construct(const Function *method, -                                         const TargetMachine &target); +  static MachineFunction& construct(const Function *Fn, +                                    const TargetMachine &target);    static void destruct(const Function *F);    static MachineFunction& get(const Function *F); diff --git a/llvm/lib/CodeGen/MachineFunction.cpp b/llvm/lib/CodeGen/MachineFunction.cpp index 15036a4d077..c06c008bade 100644 --- a/llvm/lib/CodeGen/MachineFunction.cpp +++ b/llvm/lib/CodeGen/MachineFunction.cpp @@ -99,24 +99,23 @@ MachineBasicBlock& MachineBasicBlock::get(const BasicBlock *BB) {  //                for a given Function.  //   MachineFunction& -MachineFunction::construct(const Function *M, const TargetMachine &Tar) +MachineFunction::construct(const Function *Fn, const TargetMachine &Tar)  { -  assert(M->getAnnotation(MCFM_AID) == 0 && +  assert(Fn->getAnnotation(MCFM_AID) == 0 &&           "Object already exists for this function!"); -  MachineFunction* mcInfo = new MachineFunction(M, Tar); -  M->addAnnotation(mcInfo); +  MachineFunction* mcInfo = new MachineFunction(Fn, Tar); +  Fn->addAnnotation(mcInfo);    return *mcInfo;  }  void -MachineFunction::destruct(const Function *M) +MachineFunction::destruct(const Function *Fn)  { -  bool Deleted = M->deleteAnnotation(MCFM_AID); +  bool Deleted = Fn->deleteAnnotation(MCFM_AID);    assert(Deleted && "Machine code did not exist for function!");  } -MachineFunction& -MachineFunction::get(const Function *F) +MachineFunction& MachineFunction::get(const Function *F)  {    MachineFunction *mc = (MachineFunction*)F->getAnnotation(MCFM_AID);    assert(mc && "Call construct() method first to allocate the object"); @@ -191,15 +190,15 @@ SizeToAlignment(unsigned int size, const TargetMachine& target)  /*ctor*/  MachineFunction::MachineFunction(const Function *F, -                                           const TargetMachine& target) +                                 const TargetMachine& target)    : Annotation(MCFM_AID), -    method(F), staticStackSize(0), +    Fn(F), Target(target), staticStackSize(0),      automaticVarsSize(0), regSpillsSize(0),      maxOptionalArgsSize(0), maxOptionalNumArgs(0),      currentTmpValuesSize(0), maxTmpValuesSize(0), compiledAsLeaf(false),      spillsAreaFrozen(false), automaticVarsAreaFrozen(false)  { -  maxOptionalArgsSize = ComputeMaxOptionalArgsSize(target, method, +  maxOptionalArgsSize = ComputeMaxOptionalArgsSize(target, Fn,                                                     maxOptionalNumArgs);    staticStackSize = maxOptionalArgsSize                      + target.getFrameInfo().getMinStackFrameSize(); @@ -310,10 +309,10 @@ MachineFunction::getOffset(const Value* val) const  void  MachineFunction::dump() const  { -  std::cerr << "\n" << method->getReturnType() -            << " \"" << method->getName() << "\"\n"; +  std::cerr << "\n" << Fn->getReturnType() +            << " \"" << Fn->getName() << "\"\n"; -  for (Function::const_iterator BB = method->begin(); BB != method->end(); ++BB) +  for (Function::const_iterator BB = Fn->begin(); BB != Fn->end(); ++BB)      {        std::cerr << "\n" << BB->getName() << " (" << (const void*)BB                  << ")" << ":" << "\n"; @@ -321,5 +320,5 @@ MachineFunction::dump() const        for (unsigned i=0; i < mvec.size(); i++)  	std::cerr << "\t" << *mvec[i];      }  -  std::cerr << "\nEnd function \"" << method->getName() << "\"\n\n"; +  std::cerr << "\nEnd function \"" << Fn->getName() << "\"\n\n";  }  | 

