Skip to content

Commit 2105cfc

Browse files
committed
fix: correct entry value recovery edge cases
Gate outgoing call-site reuse to inline contexts and scan callers on demand for non-inline lookups. Reconstruct breg entry values from entry-time state.
1 parent 6bffbff commit 2105cfc

7 files changed

Lines changed: 968 additions & 22 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ e2e-tests/tests/fixtures/sample_program/sample_program_stripped.debug
7373
e2e-tests/tests/fixtures/static_scope_program/static_scope_program
7474
e2e-tests/tests/fixtures/static_scope_program/static_scope_program_clang_dwarf5
7575
e2e-tests/tests/fixtures/entry_value_recovery_program/entry_value_recovery_program_clang_dwarf5
76+
e2e-tests/tests/fixtures/entry_value_breg_program/entry_value_breg_program_clang_debuglink
77+
e2e-tests/tests/fixtures/entry_value_breg_program/entry_value_breg_program_clang_debuglink.debug
7678
e2e-tests/tests/fixtures/**/.ghostscope-inline-entry-pc-regression-*/
7779
e2e-tests/tests/fixtures/**/.ghostscope-fast-parser-patched-*/
7880
e2e-tests/tests/fixtures/**/.ghostscope-entry-value-runtime-*/

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

e2e-tests/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ tempfile = { workspace = true }
2121
lazy_static = { workspace = true }
2222
scopeguard = { workspace = true }
2323
serial_test = { workspace = true }
24+
gimli = { workspace = true }
2425
object = { workspace = true }
2526
ghostscope-compiler = { version = "0.1.3", path = "../ghostscope-compiler" }
2627
ghostscope-dwarf = { version = "0.1.3", path = "../ghostscope-dwarf" }

0 commit comments

Comments
 (0)