aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ProfileData/SampleProfReader.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2021-03-18 17:44:17 -0700
committerJim Ingham <jingham@apple.com>2021-03-18 17:44:17 -0700
commit71c4da83b67a485f0cfacbce8b46eaa497df900e (patch)
treec5d0ae6c6fa31d2b5113cb6bc6cdbaa35f16e551 /llvm/lib/ProfileData/SampleProfReader.cpp
parentfa26da0582a4d5d922379db1d9fae87416b650d6 (diff)
downloadllvm-71c4da83b67a485f0cfacbce8b46eaa497df900e.zip
llvm-71c4da83b67a485f0cfacbce8b46eaa497df900e.tar.gz
llvm-71c4da83b67a485f0cfacbce8b46eaa497df900e.tar.bz2
Don't assume that stepping out of a function will land on the next line.
For instance, some recent clang emits this code on x86_64: 0x100002b99 <+57>: callq 0x100002b40 ; step_out_of_here at main.cpp:11 -> 0x100002b9e <+62>: xorl %eax, %eax 0x100002ba0 <+64>: popq %rbp 0x100002ba1 <+65>: retq and the "xorl %eax, %eax" is attributed to the same line as the callq. Since step out is supposed to stop just on returning from the function, you can't guarantee it will end up on the next line. I changed the test to check that we were either on the call line or on the next line, since either would be right depending on the debug information.
Diffstat (limited to 'llvm/lib/ProfileData/SampleProfReader.cpp')
0 files changed, 0 insertions, 0 deletions