diff options
| author | Denis Protivensky <dprotivensky@accesssoftek.com> | 2015-02-11 15:02:43 +0000 |
|---|---|---|
| committer | Denis Protivensky <dprotivensky@accesssoftek.com> | 2015-02-11 15:02:43 +0000 |
| commit | d6fe5b3005f5fbdd1c32d39b5c3e3379b97371e5 (patch) | |
| tree | 3893ce4b0ec5e0951643ab8d81d8f5f011b6809b | |
| parent | afe251649b2bd3f68785570783153b9f5dafbc2c (diff) | |
| download | bcm5719-llvm-d6fe5b3005f5fbdd1c32d39b5c3e3379b97371e5.tar.gz bcm5719-llvm-d6fe5b3005f5fbdd1c32d39b5c3e3379b97371e5.zip | |
[ELF][ARM] Fix veneer symbol names in Release build
The fix is for r228680.
This makes tests also work.
llvm-svn: 228837
| -rw-r--r-- | lld/lib/ReaderWriter/ELF/ARM/ARMRelocationPass.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/lld/lib/ReaderWriter/ELF/ARM/ARMRelocationPass.cpp b/lld/lib/ReaderWriter/ELF/ARM/ARMRelocationPass.cpp index d102f0e68bf..28638ec0154 100644 --- a/lld/lib/ReaderWriter/ELF/ARM/ARMRelocationPass.cpp +++ b/lld/lib/ReaderWriter/ELF/ARM/ARMRelocationPass.cpp @@ -74,12 +74,8 @@ public: Alignment alignment() const override { return Alignment(2); } -#ifndef NDEBUG StringRef name() const override { return _name; } std::string _name; -#else - StringRef name() const override { return ""; } -#endif }; /// \brief Atoms that hold veneer for statically relocated @@ -275,11 +271,11 @@ public: auto v = new (_file._alloc) Veneer_ARM_B_BL_StaticAtom(_file, secName); v->addReferenceELF_ARM(R_ARM_ABS32, 4, da, 0); -#ifndef NDEBUG + v->_name = "__"; v->_name += da->name(); v->_name += "_from_arm"; -#endif + _veneerMap[da] = v; _veneerVector.push_back(v); return v; @@ -294,11 +290,11 @@ public: auto v = new (_file._alloc) Veneer_THM_B_BL_StaticAtom(_file, secName); v->addReferenceELF_ARM(R_ARM_JUMP24, 4, da, 0); -#ifndef NDEBUG + v->_name = "__"; v->_name += da->name(); v->_name += "_from_thumb"; -#endif + _veneerMap[da] = v; _veneerVector.push_back(v); return v; |

