diff options
| author | Brian Gaeke <gaeke@uiuc.edu> | 2003-11-09 07:08:34 +0000 |
|---|---|---|
| committer | Brian Gaeke <gaeke@uiuc.edu> | 2003-11-09 07:08:34 +0000 |
| commit | 75bc7cec4bf5c387fa0ce016fc65b4ddbfc41b3a (patch) | |
| tree | 4b82b6ce64007779df9b99de78e3d62e962d0190 /llvm/lib | |
| parent | b09ad87eb98e261646274ee517e49af2862b7e4e (diff) | |
| download | bcm5719-llvm-75bc7cec4bf5c387fa0ce016fc65b4ddbfc41b3a.tar.gz bcm5719-llvm-75bc7cec4bf5c387fa0ce016fc65b4ddbfc41b3a.zip | |
Fix PR103
llvm-svn: 9830
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/Sparc/SparcV9CodeEmitter.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/llvm/lib/Target/Sparc/SparcV9CodeEmitter.cpp b/llvm/lib/Target/Sparc/SparcV9CodeEmitter.cpp index 5863fd67b46..d60d9151c1c 100644 --- a/llvm/lib/Target/Sparc/SparcV9CodeEmitter.cpp +++ b/llvm/lib/Target/Sparc/SparcV9CodeEmitter.cpp @@ -606,12 +606,9 @@ int64_t SparcV9CodeEmitter::getMachineOpValue(MachineInstr &MI, // external function calls, etc.? if (Function *F = dyn_cast<Function>(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! |

