mirror of
https://github.com/RPCSX/llvm.git
synced 2025-04-18 08:00:02 +00:00
Really implement David Blaikie suggestion in full of seperating
variable initialization from its usage in the push_back making collapse of the two statements unlikely even without a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244470 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
214aad9f31
commit
af1c9b3bfb
@ -2884,15 +2884,13 @@ void DwarfLinker::patchLineTableForUnit(CompileUnit &Unit,
|
|||||||
if (StopAddress != -1ULL && !Seq.empty()) {
|
if (StopAddress != -1ULL && !Seq.empty()) {
|
||||||
// Insert end sequence row with the computed end address, but
|
// Insert end sequence row with the computed end address, but
|
||||||
// the same line as the previous one.
|
// the same line as the previous one.
|
||||||
// Do not collapse the next two statements as the push_back operation
|
|
||||||
// may reallocate the vector and invalidate the iterator Seq.back().
|
|
||||||
auto NextLine = Seq.back();
|
auto NextLine = Seq.back();
|
||||||
Seq.push_back(NextLine);
|
|
||||||
Seq.back().Address = StopAddress;
|
Seq.back().Address = StopAddress;
|
||||||
Seq.back().EndSequence = 1;
|
Seq.back().EndSequence = 1;
|
||||||
Seq.back().PrologueEnd = 0;
|
Seq.back().PrologueEnd = 0;
|
||||||
Seq.back().BasicBlock = 0;
|
Seq.back().BasicBlock = 0;
|
||||||
Seq.back().EpilogueBegin = 0;
|
Seq.back().EpilogueBegin = 0;
|
||||||
|
Seq.push_back(NextLine);
|
||||||
insertLineSequence(Seq, NewRows);
|
insertLineSequence(Seq, NewRows);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user