X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FCodeGen%2FPasses.cpp;h=c62227535fc99c0cd039cf7be2cac6a254eca879;hb=b34d837397053da8e9bff90dd714e24f2a3b98b3;hp=3489db2e9f4f966a401ff9c7ac1ccbf1e58b2f62;hpb=8b89c64b5ca469366b8cde5a242ac41c040bb1aa;p=oota-llvm.git diff --git a/lib/CodeGen/Passes.cpp b/lib/CodeGen/Passes.cpp index 3489db2e9f4..c62227535fc 100644 --- a/lib/CodeGen/Passes.cpp +++ b/lib/CodeGen/Passes.cpp @@ -55,6 +55,11 @@ FunctionPass *llvm::createRegisterAllocator(CodeGenOpt::Level OptLevel) { RegisterRegAlloc::setDefault(RegAlloc); } + // This forces linking of the greedy register allocator, so -regalloc=greedy + // works in clang. + if (Ctor == createGreedyRegisterAllocator) + return createGreedyRegisterAllocator(); + if (Ctor != createDefaultRegisterAllocator) return Ctor();