mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-09 21:50:50 +00:00
Zero-Initialize PrevInstBB when entering a new MachineFunction.
It is not guaranteed that the memory used for MachineBasicBlocks in the previous MachineFunction hasn't been freed, so holding on to a pointer to the last function's isn't correct. Particularly I have observed the sret.ll testcase failing because the first BasicBlock in the new function happened to be allocated to the exact same memory as the previously saved and (deleted) PrevInstBB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@298642 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a1c1557043
commit
5787d18e9c
@ -130,6 +130,7 @@ bool hasDebugInfo(const MachineModuleInfo *MMI, const MachineFunction *MF) {
|
||||
|
||||
void DebugHandlerBase::beginFunction(const MachineFunction *MF) {
|
||||
assert(Asm);
|
||||
PrevInstBB = nullptr;
|
||||
|
||||
if (!hasDebugInfo(MMI, MF)) {
|
||||
skippedNonDebugFunction();
|
||||
|
Loading…
Reference in New Issue
Block a user