From: Chris Lattner Date: Fri, 2 Jun 2006 18:40:06 +0000 (+0000) Subject: Force anything that #includes llvm/Transforms/Utils/UnifyFunctionExitNodes.h X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=191b0ba97eedcd55d6fc8616d9c391ddfcbc4f4e;p=oota-llvm.git Force anything that #includes llvm/Transforms/Utils/UnifyFunctionExitNodes.h to link in the implementation. Thanks to Anton Korobeynikov for figuring out what was going on here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28660 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h b/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h index 81c71fb5ef6..526851ba448 100644 --- a/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h +++ b/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h @@ -38,10 +38,16 @@ public: BasicBlock *getUnreachableBlock() const { return UnreachableBlock; } virtual bool runOnFunction(Function &F); + + // Force linking the impl of this class into anything that uses this header. + static int stub; }; Pass *createUnifyFunctionExitNodesPass(); +static IncludeFile +UNIFY_FUNCTION_EXIT_NODES_INCLUDE_FILE(&UnifyFunctionExitNodes::stub); + } // End llvm namespace #endif diff --git a/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp b/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp index d3c7b328958..fa4e38660f8 100644 --- a/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp +++ b/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp @@ -25,6 +25,8 @@ using namespace llvm; static RegisterOpt X("mergereturn", "Unify function exit nodes"); +int UnifyFunctionExitNodes::stub; + Pass *llvm::createUnifyFunctionExitNodesPass() { return new UnifyFunctionExitNodes(); }