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

Never inline C variadics, cold functions, functions with incompatible attributes ... #78966

Merged
merged 6 commits into from
Nov 15, 2020

Commits on Nov 12, 2020

  1. Never inline when no_sanitize attributes differ

    The inliner looks if a sanitizer is enabled before considering
    `no_sanitize` attribute as possible source of incompatibility.
    
    The MIR inlining could happen in a crate with sanitizer disabled, but
    code generation in a crate with sanitizer enabled, thus the attribute
    would be incorrectly ignored.
    
    To avoid the issue never inline functions with different `no_sanitize`
    attributes.
    tmiasko committed Nov 12, 2020
    Configuration menu
    Copy the full SHA
    0b4af16 View commit details
    Browse the repository at this point in the history
  2. Never inline cold functions

    The information about cold attribute is lost during inlining,
    Avoid the issue by never inlining cold functions.
    tmiasko committed Nov 12, 2020
    Configuration menu
    Copy the full SHA
    ae43326 View commit details
    Browse the repository at this point in the history
  3. Remove check for impossible condition

    The callee body is already transformed; the condition is always false.
    tmiasko committed Nov 12, 2020
    Configuration menu
    Copy the full SHA
    9bb3d6b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    66cadec View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    79d853e View commit details
    Browse the repository at this point in the history
  6. ./x.py test --bless

    tmiasko committed Nov 12, 2020
    Configuration menu
    Copy the full SHA
    2a010dd View commit details
    Browse the repository at this point in the history