X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FCodeGen%2FPasses.cpp;h=7233e81473b6e033d572ce3adf7180aa18aa37de;hb=1484089bbf960f7191215dfa6c0bb51c8e30794e;hp=b390e037f6d4ce48d00f46975692fe5390c76e1c;hpb=b8edf61fa9f558ccd68b4b5ac970e3d403d870ea;p=oota-llvm.git diff --git a/lib/CodeGen/Passes.cpp b/lib/CodeGen/Passes.cpp index b390e037f6d..7233e81473b 100644 --- a/lib/CodeGen/Passes.cpp +++ b/lib/CodeGen/Passes.cpp @@ -18,17 +18,20 @@ using namespace llvm; namespace { - enum RegAllocName { simple, local, linearscan }; + enum RegAllocName { simple, local, linearscan, iterativescan }; cl::opt - RegAlloc("regalloc", - 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 register allocator (experimental)"), - clEnumValEnd), - cl::init(local)); + RegAlloc( + "regalloc", + cl::desc("Register allocator to use: (default = linearscan)"), + cl::Prefix, + cl::values( + clEnumVal(simple, " simple register allocator"), + clEnumVal(local, " local register allocator"), + clEnumVal(linearscan, " linear scan register allocator"), + clEnumVal(iterativescan, " iterative scan register allocator"), + clEnumValEnd), + cl::init(linearscan)); } FunctionPass *llvm::createRegisterAllocator() { @@ -42,6 +45,8 @@ FunctionPass *llvm::createRegisterAllocator() { return createLocalRegisterAllocator(); case linearscan: return createLinearScanRegisterAllocator(); + case iterativescan: + return createIterativeScanRegisterAllocator(); } }