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

Consistently avoid constructing optimized MIR when not doing codegen #80718

Merged
merged 3 commits into from
Jan 13, 2021

Commits on Jan 12, 2021

  1. Reorder MIR encoding checks

    Start from least expensive checks when deciding whether to encode MIR or not.
    
    No functional changes intended.
    tmiasko committed Jan 12, 2021
    Configuration menu
    Copy the full SHA
    1bf3949 View commit details
    Browse the repository at this point in the history
  2. Consistently avoid constructing optimized MIR when not doing codegen

    The optimized MIR for closures is being encoded unconditionally, while
    being unnecessary for cargo check. This turns out to be especially
    costly with MIR inlining enabled, since it triggers computation of
    optimized MIR for all callees that are being examined for inlining
    purposes.
    
    Skip encoding of optimized MIR for closures, enum constructors, struct
    constructors, and trait fns when not doing codegen, like it is already
    done for other items since 49433.
    tmiasko committed Jan 12, 2021
    Configuration menu
    Copy the full SHA
    a6dd7b5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1685731 View commit details
    Browse the repository at this point in the history