aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2013-04-03 18:31:12 +0000
committerEric Christopher <echristo@gmail.com>2013-04-03 18:31:12 +0000
commiteac49f668a5461af4c408b13f328c9e370457200 (patch)
tree30200f9245bdd7f4b662fa203ff2c902af7f9a13 /include
parent5417223f98145d8e2de442da10ace621cae613de (diff)
downloadexternal_llvm-eac49f668a5461af4c408b13f328c9e370457200.zip
external_llvm-eac49f668a5461af4c408b13f328c9e370457200.tar.gz
external_llvm-eac49f668a5461af4c408b13f328c9e370457200.tar.bz2
When dumping clear the arm/thumb flag for now.
Patch by Nico Rieck! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178676 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Object/ELF.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/llvm/Object/ELF.h b/include/llvm/Object/ELF.h
index b0d8663..fa75053 100644
--- a/include/llvm/Object/ELF.h
+++ b/include/llvm/Object/ELF.h
@@ -1058,6 +1058,11 @@ error_code ELFObjectFile<ELFT>::getSymbolAddress(DataRefImpl Symb,
IsRelocatable = true;
}
Result = symb->st_value;
+
+ // Clear the ARM/Thumb indicator flag.
+ if (Header->e_machine == ELF::EM_ARM)
+ Result &= ~1;
+
if (IsRelocatable && Section != 0)
Result += Section->sh_addr;
return object_error::success;