You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
scripts/addr2line.py: fix hanging with the new llvm-addr2line version
addr2line.py invokes "addr2line" tool in a "server" mode where addresses
are fed via stdin. It intentionally makes a corresponding "addr2line" tool generate a
known "invalid address" pattern at the end of each address decoding by feeding
it a "0x0" address in order to denote the end of it because a single address can be decoded
into multiple lines due to inlining.
The above strategy assumes that 0x0 address is always going to be interpreted as an invalid one by
both add2line and by llvm-addr2line.
However, at least llvm-addr2line 18.1.3 doesn't always interpret it this way.
On the other hand an empty line does always generate an expected (invalid address)
output.
On top of that it looks like a new llvm-addr2line changed the "invalid address" pattern
format.
This patch adds a new "invalid input" pattern to a dummy_pattern and
changes the way we generate such an output by pushing line that only has a ',' charachter instead of a
0x0 address.
Ref #2609Closes#2611
0 commit comments