aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2024-03-27 09:25:46 -0700
committerGitHub <noreply@github.com>2024-03-27 09:25:46 -0700
commit6a0ec8e25cba9d398cf525889c53835cf40247a3 (patch)
treeea6612b6db3b3b142b2f52768664e2052b3389ba /clang/lib/CodeGen/CodeGenModule.cpp
parent77118536b52bf5256eed85f61451d0beb6cf5dc3 (diff)
downloadllvm-6a0ec8e25cba9d398cf525889c53835cf40247a3.zip
llvm-6a0ec8e25cba9d398cf525889c53835cf40247a3.tar.gz
llvm-6a0ec8e25cba9d398cf525889c53835cf40247a3.tar.bz2
[lldb] Revive shell test after updating UnwindTable (#86770)
In commit 2f63718f8567413a1c596bda803663eb58d6da5a Author: Jason Molenda <jmolenda@apple.com> Date: Tue Mar 26 09:07:15 2024 -0700 [lldb] Don't clear a Module's UnwindTable when adding a SymbolFile (#86603) I stopped clearing a Module's UnwindTable when we add a SymbolFile to avoid the memory management problems with adding a symbol file asynchronously while the UnwindTable is being accessed on another thread. This broke the target-symbols-add-unwind.test shell test on Linux which removes the DWARF debub_frame section from a binary, loads it, then loads the unstripped binary with the DWARF debug_frame section and checks that the UnwindPlans for a function include debug_frame. I originally decided that I was willing to sacrifice the possiblity of additional unwind sources from a symbol file because we rely on assembly emulation so heavily, they're rarely critical. But there are targets where we we don't have emluation and rely on things like DWARF debug_frame a lot more, so this probably wasn't a good choice. This patch adds a new UnwindTable::Update method which looks for any new sources of unwind information and adds it to the UnwindTable, and calls that after a new SymbolFile has been added to a Module.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions