summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShankar Easwaran <shankare@codeaurora.org>2013-03-20 04:52:08 +0000
committerShankar Easwaran <shankare@codeaurora.org>2013-03-20 04:52:08 +0000
commit1e848e0edfe8ac53717be550ecb709fdfa76fc0c (patch)
tree460016989c1ce6e36ebece0294a42768d61ecf47
parent8d93242709e31f073d6d90922e3f544f26defec4 (diff)
downloadbcm5719-llvm-1e848e0edfe8ac53717be550ecb709fdfa76fc0c.tar.gz
bcm5719-llvm-1e848e0edfe8ac53717be550ecb709fdfa76fc0c.zip
[ELF] Order .got.plt properly
llvm-svn: 177482
-rw-r--r--lld/lib/ReaderWriter/ELF/DefaultLayout.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/lld/lib/ReaderWriter/ELF/DefaultLayout.h b/lld/lib/ReaderWriter/ELF/DefaultLayout.h
index bdb55af3aee..ede4aa10694 100644
--- a/lld/lib/ReaderWriter/ELF/DefaultLayout.h
+++ b/lld/lib/ReaderWriter/ELF/DefaultLayout.h
@@ -334,7 +334,10 @@ Layout::SectionOrder DefaultLayout<ELFT>::getSectionOrder(
return ORDER_BSS;
case DefinedAtom::typeGOT:
- return ORDER_GOT;
+ return llvm::StringSwitch<Reference::Kind>(name)
+ .StartsWith(".got.plt", ORDER_GOT_PLT)
+ .Default(ORDER_GOT);
+
case DefinedAtom::typeStub:
return ORDER_PLT;
OpenPOWER on IntegriCloud