[PATCH] D129260: [BOLT][AArch64] Handle gold linker veneers
Rafael Auler via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 8 14:50:25 PDT 2022
rafauler added a comment.
There's a memory leak the two tests:
- TEST 'BOLT :: AArch64/veneer-gold.s' FAILED *******************
- TEST 'BOLT :: AArch64/veneer.s' FAILED ********************
This is detected by just running our regular test suite, but with bolt built with address sanitizer from llvm. If you are using cmake, just add -DLLVM_USE_SANITIZER=Address if you are building bolt with clang.
Here's the leak stack trace:
74287==ERROR: LeakSanitizer: detected memory leaks
--------------------------------------------------
Direct leak of 176 byte(s) in 2 object(s) allocated from:
#0 in operator new(unsigned long) (build/bin/llvm-bolt+0x769ce7)
#1 in llvm::bolt::BinaryContext::registerNameAtAddress(llvm::StringRef, unsigned long, unsigned long, unsigned short, unsigned int) /bolt/lib/Core/BinaryContext.cpp:985:10
#2 in llvm::bolt::BinaryContext::getOrCreateGlobalSymbol(unsigned long, llvm::Twine, unsigned long, unsigned short, unsigned int) /bolt/lib/Core/BinaryContext.cpp:743:10
#3 in operator() /bolt/lib/Core/BinaryFunction.cpp:1095:23
#4 in llvm::bolt::BinaryFunction::disassemble() /bolt/lib/Core/BinaryFunction.cpp:1300:28
#5 in llvm::bolt::RewriteInstance::disassembleFunctions() /bolt/lib/Rewrite/RewriteInstance.cpp:2836:19
#6 in llvm::bolt::RewriteInstance::run() /bolt/lib/Rewrite/RewriteInstance.cpp:747:3
#7 in main /bolt/tools/driver/llvm-bolt.cpp:244:24
#8 in __libc_start_main
#9 in _start
Indirect leak of 16 byte(s) in 2 object(s) allocated from:
#0 in operator new(unsigned long)
#1 in allocate
#2 in allocate
#3 in _M_allocate
#4 in _M_realloc_insert<llvm::MCSymbol *>
#5 in emplace_back<llvm::MCSymbol *>
#6 in push_back /
#7 in llvm::bolt::BinaryData::BinaryData(llvm::MCSymbol&, unsigned long, unsigned long, unsigned short, llvm::bolt::BinarySection&, unsigned int) /bolt/lib/Core/BinaryData.cpp:136:11
#8 in llvm::bolt::BinaryContext::registerNameAtAddress(llvm::StringRef, unsigned long, unsigned long, unsigned short, unsigned int) /bolt/lib/Core/BinaryContext.cpp:985:14
#9 in llvm::bolt::BinaryContext::getOrCreateGlobalSymbol(unsigned long, llvm::Twine, unsigned long, unsigned short, unsigned int) /bolt/lib/Core/BinaryContext.cpp:743:10
#10 in operator() /bolt/lib/Core/BinaryFunction.cpp:1095:23
#11 in llvm::bolt::BinaryFunction::disassemble() /bolt/lib/Core/BinaryFunction.cpp:1300:28
#12 in llvm::bolt::RewriteInstance::disassembleFunctions() /bolt/lib/Rewrite/RewriteInstance.cpp:2836:19
#13 in llvm::bolt::RewriteInstance::run() /bolt/lib/Rewrite/RewriteInstance.cpp:747:3
#14 in main /bolt/tools/driver/llvm-bolt.cpp:244:24
#15 in __libc_start_main
#16 in _start
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D129260/new/
https://reviews.llvm.org/D129260
More information about the llvm-commits
mailing list