From e9414cab00e5d1ff37edf25cbc422ba8de63d4ff Mon Sep 17 00:00:00 2001 From: Brian Gaeke Date: Mon, 10 Nov 2003 07:12:01 +0000 Subject: [PATCH] Fix problems linking against the reoptimizer; _llvm_regAllocState must have externally-visible linkage, and SaveStateToModule must default to true for llc. I don't remember why I made it const; perhaps it should be deconstified. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9858 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/RegAlloc/PhyRegAlloc.cpp | 4 ++-- lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp index fd615545f23..99917cdf0b4 100644 --- a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp +++ b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp @@ -53,7 +53,7 @@ RegAllocDebugLevel_t DEBUG_RA; /// allocator's state after it has done its job. This is a hack. /// PhyRegAlloc::SavedStateMapTy ExportedFnAllocState; -const bool SaveStateToModule = false; +const bool SaveStateToModule = true; static cl::opt DRA_opt("dregalloc", cl::Hidden, cl::location(DEBUG_RA), @@ -1286,7 +1286,7 @@ bool PhyRegAlloc::doFinalization (Module &M) { std::vector CV2; CV2.push_back (ConstantUInt::get (Type::UIntTy, Size)); CV2.push_back (ConstantArray::get (AT2, allstate)); - new GlobalVariable (ST2, true, GlobalValue::InternalLinkage, + new GlobalVariable (ST2, true, GlobalValue::ExternalLinkage, ConstantStruct::get (ST2, CV2), "_llvm_regAllocState", &M); return false; // No error. diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp index fd615545f23..99917cdf0b4 100644 --- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp +++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp @@ -53,7 +53,7 @@ RegAllocDebugLevel_t DEBUG_RA; /// allocator's state after it has done its job. This is a hack. /// PhyRegAlloc::SavedStateMapTy ExportedFnAllocState; -const bool SaveStateToModule = false; +const bool SaveStateToModule = true; static cl::opt DRA_opt("dregalloc", cl::Hidden, cl::location(DEBUG_RA), @@ -1286,7 +1286,7 @@ bool PhyRegAlloc::doFinalization (Module &M) { std::vector CV2; CV2.push_back (ConstantUInt::get (Type::UIntTy, Size)); CV2.push_back (ConstantArray::get (AT2, allstate)); - new GlobalVariable (ST2, true, GlobalValue::InternalLinkage, + new GlobalVariable (ST2, true, GlobalValue::ExternalLinkage, ConstantStruct::get (ST2, CV2), "_llvm_regAllocState", &M); return false; // No error. -- 2.34.1