X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FCodeGen%2FLinkAllCodegenComponents.h;h=e7ccbfa617e52f93e57a1d6bab7d9a621ec0e8f7;hb=6e046d3810f19787e47e1a5e2aa878ac87c1e951;hp=5c39b505fec234ee89615c611a20d91f0603e876;hpb=9373beba6010dd34316a801c3a9b37ab9e048031;p=oota-llvm.git diff --git a/include/llvm/CodeGen/LinkAllCodegenComponents.h b/include/llvm/CodeGen/LinkAllCodegenComponents.h index 5c39b505fec..e7ccbfa617e 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,17 +31,25 @@ namespace { if (std::getenv("bar") != (char*) -1) return; - (void) llvm::createSimpleRegisterAllocator(); - (void) llvm::createLocalRegisterAllocator(); - (void) llvm::createLinearScanRegisterAllocator(); - - (void) llvm::createBFS_DAGScheduler(NULL, NULL, NULL); - (void) llvm::createSimpleDAGScheduler(NULL, NULL, NULL); - (void) llvm::createNoItinsDAGScheduler(NULL, NULL, NULL); - (void) llvm::createBURRListDAGScheduler(NULL, NULL, NULL); - (void) llvm::createTDRRListDAGScheduler(NULL, NULL, NULL); - (void) llvm::createTDListDAGScheduler(NULL, NULL, NULL); - (void) llvm::createDefaultScheduler(NULL, NULL, NULL); + (void) llvm::createFastRegisterAllocator(); + (void) llvm::createBasicRegisterAllocator(); + (void) llvm::createGreedyRegisterAllocator(); + (void) llvm::createDefaultPBQPRegisterAllocator(); + + 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.