summaryrefslogtreecommitdiffstats
path: root/lld/lib/Passes/GOTPass.cpp
diff options
context:
space:
mode:
authorMichael J. Spencer <bigcheesegs@gmail.com>2012-04-02 23:56:36 +0000
committerMichael J. Spencer <bigcheesegs@gmail.com>2012-04-02 23:56:36 +0000
commitb495562b5d94b249968c1314dff0defb6682fb3d (patch)
tree651511ebcd895567ae05f5cec7571cfbc0b8eba4 /lld/lib/Passes/GOTPass.cpp
parent51e318737a880f9102ee7aaff4de86e4b95d464a (diff)
downloadbcm5719-llvm-b495562b5d94b249968c1314dff0defb6682fb3d.tar.gz
bcm5719-llvm-b495562b5d94b249968c1314dff0defb6682fb3d.zip
Use the LLVM RTTI library.
llvm-svn: 153912
Diffstat (limited to 'lld/lib/Passes/GOTPass.cpp')
-rw-r--r--lld/lib/Passes/GOTPass.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lld/lib/Passes/GOTPass.cpp b/lld/lib/Passes/GOTPass.cpp
index 0d92a1e1d1f..29cd38b9c08 100644
--- a/lld/lib/Passes/GOTPass.cpp
+++ b/lld/lib/Passes/GOTPass.cpp
@@ -38,6 +38,7 @@
#include "lld/Core/Reference.h"
#include "llvm/ADT/DenseMap.h"
+#include "llvm/Support/Casting.h"
namespace lld {
@@ -57,7 +58,7 @@ void GOTPass::perform() {
if ( _platform.isGOTAccess(ref->kind(), canBypassGOT) ) {
const Atom* target = ref->target();
assert(target != nullptr);
- const DefinedAtom* defTarget = target->definedAtom();
+ const DefinedAtom* defTarget = llvm::dyn_cast<DefinedAtom>(target);
bool replaceTargetWithGOTAtom = false;
if ( target->definition() == Atom::definitionSharedLibrary ) {
// Accesses to shared library symbols must go through GOT.
OpenPOWER on IntegriCloud