Skip to content
This repository has been archived by the owner on Nov 1, 2023. It is now read-only.

Don't consume S_LABEL symbols from PDBs #3046

Merged
merged 4 commits into from
Apr 20, 2023

Conversation

ranweiler
Copy link
Member

On Windows, label symbols (see here, here) are used to extend the initial set of basic block entrypoint offsets, augmenting function entrypoints. We expect these labels to describe instruction locations, and never procedure-local data or tables.

In practice, this doesn't always hold. We may be able to re-enable this feature in the future, but we'll need a reliable procedure for identifying true code labels (dereferencing to an x86 instruction is insufficient), so disable this hinting for now.

@ranweiler
Copy link
Member Author

This should be a conservative change: the coverage "denominator" may decrease for some targets, but we eliminate the bug class of label symbol misinterpretation.

@codecov-commenter
Copy link

codecov-commenter commented Apr 20, 2023

Codecov Report

Merging #3046 (7f79610) into main (980d52f) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #3046   +/-   ##
=======================================
  Coverage   31.42%   31.43%           
=======================================
  Files         306      306           
  Lines       36633    36627    -6     
=======================================
  Hits        11513    11513           
+ Misses      25120    25114    -6     
Impacted Files Coverage Δ
src/agent/debuggable-module/src/windows.rs 0.00% <ø> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@ranweiler
Copy link
Member Author

@Porges, I no longer have perms to merge this, but integration tests look good.

@Porges Porges enabled auto-merge (squash) April 20, 2023 23:02
@Porges Porges merged commit 73c3ada into microsoft:main Apr 20, 2023
@ranweiler ranweiler deleted the skip-label-symbols branch April 20, 2023 23:59
@AdamL-Microsoft AdamL-Microsoft mentioned this pull request May 4, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants