diff options
author | Felipe de Azevedo Piovezan <fpiovezan@apple.com> | 2024-09-13 15:25:11 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-13 15:25:11 -0700 |
commit | ddcc601353db0464eb15a3e0258ec6789dd1602c (patch) | |
tree | 641e36cd697d062be720547016ce1caef9c1e677 /llvm/unittests/Support/ProgramTest.cpp | |
parent | d0638ed0fd54ed7331737b99c19086b70d8bf48b (diff) | |
download | llvm-ddcc601353db0464eb15a3e0258ec6789dd1602c.zip llvm-ddcc601353db0464eb15a3e0258ec6789dd1602c.tar.gz llvm-ddcc601353db0464eb15a3e0258ec6789dd1602c.tar.bz2 |
[CoroSplit][DebugInfo] Adjust heuristic for moving DIScope of funclets (#108611)
CoroSplit has a heuristic where the scope line for funclets is adjusted
to match the line of the suspend intrinsic that caused the split. This
is useful as it avoids a jump on the line table from the original
function declaration to the line where the split happens.
However, very often using the line of the split is not ideal: if we can
avoid it, we should not have a line entry for the split location, as
this would cause breakpoints by line to match against two functions: the
funclet before and the funclet after the split.
This patch adjusts the heuristics to look for the first instruction with
a non-zero line number after the split. In other words, this patch makes
breakpoints on `await foo()` lines behave much more like a regular
function call.
Diffstat (limited to 'llvm/unittests/Support/ProgramTest.cpp')
0 files changed, 0 insertions, 0 deletions