summaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
diff options
context:
space:
mode:
authorRahman Lavaee <rahmanl@google.com>2021-03-22 21:36:32 -0700
committerRahman Lavaee <rahmanl@google.com>2021-03-22 21:38:05 -0700
commit949abf7d6afb9abd8d35bfb3ca2a1fb2e47a2c79 (patch)
tree0f9fbdf7fcdfbafebe1e2eff06789f195838c255 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
parent1e04706adbb1a05408ce5e055a9a3d3ce460d1b1 (diff)
[llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB-Address-Map section.
This patch adds a fallthrough bit to basic block metadata, indicating whether the basic block can fallthrough without taking any branches. The bit will help us avoid an intel LBR bug which results in occasional duplicate entries at the beginning of the LBR stack. This patch uses `MachineBasicBlock::canFallThrough()` to set the bit. This is not a const method because it eventually calls `TargetInstrInfo::analyzeBranch`, but it calls this function with the default `AllowModify=false`. So we can either make the argument to the `getBBAddrMapMetadata` non-const, or we can use `const_cast` when calling `canFallThrough`. I decide to go with the latter since this is purely due to legacy code, and in general we should not allow the BasicBlock to be mutable during `getBBAddrMapMetadata`. Reviewed By: tmsriram Differential Revision: https://reviews.llvm.org/D96918
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp')
0 files changed, 0 insertions, 0 deletions