Fix SingleSource/Regression/C/2005-05-06-LongLongSignedShift.c, we were not
[oota-llvm.git] / lib / CodeGen / MachineFunction.cpp
index 3862858bc7172a03e71eda87e977be4167fdbb7e..d49a1ddb4b16f71338e83af382b6127a16ae528d 100644 (file)
@@ -61,7 +61,7 @@ namespace {
 /// stream is std::cerr; the default banner is empty.
 ///
 FunctionPass *llvm::createMachineFunctionPrinterPass(std::ostream *OS,
-                                                     const std::string &Banner) {
+                                                     const std::string &Banner){
   return new Printer(OS, Banner);
 }
 
@@ -89,8 +89,8 @@ FunctionPass *llvm::createMachineCodeDeleter() {
 //===---------------------------------------------------------------------===//
 // MachineFunction implementation
 //===---------------------------------------------------------------------===//
-MachineBasicBlock* ilist_traits<MachineBasicBlock>::createNode()
-{
+
+MachineBasicBlock* ilist_traits<MachineBasicBlock>::createSentinel() {
   MachineBasicBlock* dummy = new MachineBasicBlock();
   LeakDetector::removeGarbageObject(dummy);
   return dummy;
@@ -99,8 +99,7 @@ MachineBasicBlock* ilist_traits<MachineBasicBlock>::createNode()
 void ilist_traits<MachineBasicBlock>::transferNodesFromList(
   iplist<MachineBasicBlock, ilist_traits<MachineBasicBlock> >& toList,
   ilist_iterator<MachineBasicBlock> first,
-  ilist_iterator<MachineBasicBlock> last)
-{
+  ilist_iterator<MachineBasicBlock> last) {
   if (Parent != toList.Parent)
     for (; first != last; ++first)
       first->Parent = toList.Parent;
@@ -108,7 +107,7 @@ void ilist_traits<MachineBasicBlock>::transferNodesFromList(
 
 MachineFunction::MachineFunction(const Function *F,
                                  const TargetMachine &TM)
-  : Annotation(MF_AID), Fn(F), Target(TM) {
+  : Annotation(MF_AID), Fn(F), Target(TM), UsedPhysRegs(0) {
   SSARegMapping = new SSARegMap();
   MFInfo = 0;
   FrameInfo = new MachineFrameInfo();
@@ -122,6 +121,7 @@ MachineFunction::~MachineFunction() {
   delete MFInfo;
   delete FrameInfo;
   delete ConstantPool;
+  delete[] UsedPhysRegs;
 }
 
 void MachineFunction::dump() const { print(std::cerr); }
@@ -256,7 +256,8 @@ void MachineFunction::clearSSARegMap() {
 /// CreateStackObject - Create a stack object for a value of the specified type.
 ///
 int MachineFrameInfo::CreateStackObject(const Type *Ty, const TargetData &TD) {
-  return CreateStackObject(TD.getTypeSize(Ty), TD.getTypeAlignment(Ty));
+  return CreateStackObject((unsigned)TD.getTypeSize(Ty), 
+                           TD.getTypeAlignment(Ty));
 }