[PATCH] D26240: [LLD][ARM][AArch64] ARM and AArch64 undefined weak reference values for relative relocations
Peter Smith via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 3 11:50:40 PDT 2016
peter.smith updated this revision to Diff 76876.
peter.smith added a comment.
I've made the suggested change to elf32_t.
Apologies I'm a bit confused about Symbols.h as I haven't made any changes to it, I was just pointing out that the existing implementation of symbol has an assert for !isLocal(). It is possible to put a test for isWeak() into SymbolBody, that returns false if the SymbolBody is a local and only forwards on to Symbol if it isn't. Would you like me to add that?
Existing implementation:
inline Symbol *SymbolBody::symbol() {
assert(!isLocal());
return reinterpret_cast<Symbol *>(reinterpret_cast<char *>(this) -
offsetof(Symbol, Body));
}
https://reviews.llvm.org/D26240
Files:
ELF/InputSection.cpp
test/ELF/aarch64-undefined-weak.s
test/ELF/arm-thumb-no-undefined-thunk.s
test/ELF/arm-thumb-undefined-weak.s
test/ELF/arm-undefined-weak.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26240.76876.patch
Type: text/x-patch
Size: 7345 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161103/4d999ac6/attachment.bin>
More information about the llvm-commits
mailing list