[llvm-commits] [regalloc_linearscan] CVS: llvm/lib/Target/X86/X86TargetMachine.cpp

Alkis Evlogimenos alkis at cs.uiuc.edu
Thu Oct 2 02:27:15 PDT 2003


Changes in directory llvm/lib/Target/X86:

X86TargetMachine.cpp updated: 1.25.2.1 -> 1.25.2.2

---
Log message:

Merge-in from main


---
Diffs of the changes:

Index: llvm/lib/Target/X86/X86TargetMachine.cpp
diff -u llvm/lib/Target/X86/X86TargetMachine.cpp:1.25.2.1 llvm/lib/Target/X86/X86TargetMachine.cpp:1.25.2.2
--- llvm/lib/Target/X86/X86TargetMachine.cpp:1.25.2.1	Wed Oct  1 14:41:38 2003
+++ llvm/lib/Target/X86/X86TargetMachine.cpp	Thu Oct  2 02:26:00 2003
@@ -18,14 +18,14 @@
 namespace {
   cl::opt<RegAllocName>
   RegAlloc("regalloc",
-           cl::desc("Register allocator to use:"), cl::Prefix,
-           cl::values(clEnumVal(simple, "simple register allocator)"),
-                      clEnumVal(local, "local register allocator"),
-                      clEnumVal(linearscan, "linear scan global register allocator")),
+           cl::desc("Register allocator to use: (default = simple)"),
+           cl::Prefix,
+           cl::values(clEnumVal(simple,     "  simple register allocator"),
+                      clEnumVal(local,      "  local register allocator"),
+                      clEnumVal(linearscan, "  linear scan global register allocator"),
+                      0),
            cl::init(local));
 
-  cl::opt<bool> NoLocalRA("disable-local-ra",
-                          cl::desc("Use Simple RA instead of Local RegAlloc"));
   cl::opt<bool> PrintCode("print-machineinstrs",
 			  cl::desc("Print generated machine code"));
   cl::opt<bool> NoPatternISel("disable-pattern-isel", cl::init(true),
@@ -74,10 +74,18 @@
     PM.add(createMachineFunctionPrinterPass());
 
   // Perform register allocation to convert to a concrete x86 representation
-  if (NoLocalRA)
+  switch (RegAlloc) {
+  case simple:
     PM.add(createSimpleRegisterAllocator());
-  else
+    break;
+  case local:
+    PM.add(createLocalRegisterAllocator());
+    break;
+  case linearscan:
     PM.add(createLocalRegisterAllocator());
+  default:
+    assert(0 && "no register allocator selected");
+  }
 
   if (PrintCode)
     PM.add(createMachineFunctionPrinterPass());





More information about the llvm-commits mailing list