Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleaning up write barrier code #68124

Merged
merged 3 commits into from
Apr 22, 2022

Commits on Apr 17, 2022

  1. Write barrier code cleanup

    1) Delete leftovers from legacy codegen, including the "tgt" naming.
    2) Do not second-guess the write barrier form when selecting a helper,
       always return "known" WBF from "gcIsWriteBarrierCandidate" instead.
    SingleAccretion committed Apr 17, 2022
    Configuration menu
    Copy the full SHA
    5770d42 View commit details
    Browse the repository at this point in the history
  2. Delete GTF_IND_TGT_ANYWHERE

    And create GTF_IND_TGT_HEAP instead, its logical opposite.
    
    For reference, the situation before this change was as follows:
    
    // Type of the ("simplified"/"base") address:
    //
    //  - TYP_I_IMPL: checked write barrier
    //  - TYP_REF:    unchecked write barrier
    //  - TYP_BYREF:
    //    1) No flags:     unchecked write barrier
    //    2) TGT_ANYWHERE: checked write barrier
    
    The TYP_BYREF case will now look like this:
    //
    //    1) No flags: checked write barrier
    //    2) TGT_HEAP: unchecked write barrier
    
    The main benefit is that we get the default state (no flags) to
    be the conservatively correct one.
    SingleAccretion committed Apr 17, 2022
    Configuration menu
    Copy the full SHA
    ddce36b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6af2d7a View commit details
    Browse the repository at this point in the history