summaryrefslogtreecommitdiff
path: root/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2014-02-18 21:46:39 +0000
committerLang Hames <lhames@gmail.com>2014-02-18 21:46:39 +0000
commit25818a6e26710e555dd8a32e8a6475ec20b60d65 (patch)
tree01656441e0e9e46da6f2c2890f72dfe0cfb145e4 /lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
parenta3de371b531a5667e2db3eb0cb1c8b9fc55941e4 (diff)
downloadllvm-25818a6e26710e555dd8a32e8a6475ec20b60d65.tar.gz
llvm-25818a6e26710e555dd8a32e8a6475ec20b60d65.tar.bz2
llvm-25818a6e26710e555dd8a32e8a6475ec20b60d65.tar.xz
Consistently check 'IsCode' when allocating sections in RuntimeDyld (via
findOrEmitSection). Vaidas Gasiunas's patch, r201259, fixed one instance where we were always allocating sections as text. This patch fixes the remaining buggy call sites. No test case: This isn't breaking anything that I know of, it's just inconsistent. <rdar://problem/15943542> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201605 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp')
-rw-r--r--lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
index 0408337fff..be80cbcfda 100644
--- a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
+++ b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
@@ -378,7 +378,9 @@ void RuntimeDyldMachO::processRelocationRef(unsigned SectionID,
}
} else {
SectionRef Sec = MachO->getRelocationSection(RE);
- Value.SectionID = findOrEmitSection(Obj, Sec, true, ObjSectionToID);
+ bool IsCode = false;
+ Sec.isText(IsCode);
+ Value.SectionID = findOrEmitSection(Obj, Sec, IsCode, ObjSectionToID);
uint64_t Addr;
Sec.getAddress(Addr);
Value.Addend = Addend - Addr;