X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FCodeGen%2FLinkAllCodegenComponents.h;h=fee131e4a3c6b73211796a3ac98e7e1edf9b0e66;hb=c75c50f45b3d6d1d61ce6b411d12cedaadd71d5b;hp=82b5da9f0bf605b082eedad13dfae9dd76bafc54;hpb=c6a0a117a63b22ac8f4ae1aaa16a4a4fb57a45f1;p=oota-llvm.git diff --git a/include/llvm/CodeGen/LinkAllCodegenComponents.h b/include/llvm/CodeGen/LinkAllCodegenComponents.h index 82b5da9f0bf..fee131e4a3c 100644 --- a/include/llvm/CodeGen/LinkAllCodegenComponents.h +++ b/include/llvm/CodeGen/LinkAllCodegenComponents.h @@ -2,8 +2,8 @@ // // The LLVM Compiler Infrastructure // -// This file was developed by James M. Laskey and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // @@ -15,8 +15,11 @@ #ifndef LLVM_CODEGEN_LINKALLCODEGENCOMPONENTS_H #define LLVM_CODEGEN_LINKALLCODEGENCOMPONENTS_H +#include "llvm/CodeGen/GCs.h" #include "llvm/CodeGen/Passes.h" -#include "llvm/CodeGen/ScheduleDAG.h" +#include "llvm/CodeGen/SchedulerRegistry.h" +#include "llvm/Target/TargetMachine.h" +#include namespace { struct ForceCodegenLinking { @@ -28,19 +31,29 @@ namespace { if (std::getenv("bar") != (char*) -1) return; - (void) llvm::createSimpleRegisterAllocator(); - (void) llvm::createLocalRegisterAllocator(); - (void) llvm::createLinearScanRegisterAllocator(); - - (void) llvm::createBFS_DAGScheduler(NULL, NULL); - (void) llvm::createSimpleDAGScheduler(NULL, NULL); - (void) llvm::createNoItinsDAGScheduler(NULL, NULL); - (void) llvm::createBURRListDAGScheduler(NULL, NULL); - (void) llvm::createTDRRListDAGScheduler(NULL, NULL); - (void) llvm::createTDListDAGScheduler(NULL, NULL); + (void) llvm::createFastRegisterAllocator(); + (void) llvm::createBasicRegisterAllocator(); + (void) llvm::createGreedyRegisterAllocator(); + (void) llvm::createDefaultPBQPRegisterAllocator(); + + llvm::linkCoreCLRGC(); + llvm::linkOcamlGC(); + llvm::linkErlangGC(); + llvm::linkShadowStackGC(); + llvm::linkStatepointExampleGC(); + + (void) llvm::createBURRListDAGScheduler(nullptr, + llvm::CodeGenOpt::Default); + (void) llvm::createSourceListDAGScheduler(nullptr, + llvm::CodeGenOpt::Default); + (void) llvm::createHybridListDAGScheduler(nullptr, + llvm::CodeGenOpt::Default); + (void) llvm::createFastDAGScheduler(nullptr, llvm::CodeGenOpt::Default); + (void) llvm::createDefaultScheduler(nullptr, llvm::CodeGenOpt::Default); + (void) llvm::createVLIWDAGScheduler(nullptr, llvm::CodeGenOpt::Default); } } ForceCodegenLinking; // Force link by creating a global definition. } -#endif \ No newline at end of file +#endif