From: Brian Gaeke Date: Sun, 9 Nov 2003 07:08:34 +0000 (+0000) Subject: Fix PR103 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=1654bdba0b903a9368b5a00b9bf4f95a1653a95e;p=oota-llvm.git Fix PR103 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9830 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/SparcV9/SparcV9CodeEmitter.cpp b/lib/Target/SparcV9/SparcV9CodeEmitter.cpp index 5863fd67b46..d60d9151c1c 100644 --- a/lib/Target/SparcV9/SparcV9CodeEmitter.cpp +++ b/lib/Target/SparcV9/SparcV9CodeEmitter.cpp @@ -606,12 +606,9 @@ int64_t SparcV9CodeEmitter::getMachineOpValue(MachineInstr &MI, // external function calls, etc.? if (Function *F = dyn_cast(GV)) { DEBUG(std::cerr << "Function: "); - if (F->isExternal()) { - // Sparc backend broken: this MO should be `ExternalSymbol' - rv = (int64_t)MCE.getGlobalValueAddress(F->getName()); - } else { - rv = (int64_t)MCE.getGlobalValueAddress(F); - } + // NOTE: This results in stubs being generated even for + // external, native functions, which is not optimal. See PR103. + rv = (int64_t)MCE.getGlobalValueAddress(F); if (rv == 0) { DEBUG(std::cerr << "not yet generated\n"); // Function has not yet been code generated!