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

Partly mitigate bad Clang inlining decision #66

Commits on Apr 14, 2019

  1. Partly mitigate bad Clang inlining decision

    Because a visitor is wrapped several times during visitation it cases extra
    temporaries usage and useless store and loads that can only be optimized if
    the `visitation_impl` is inlined into the function that creates the wrapper.
    Clang inliner decides not to inline functions even with small-sized switches,
    resulting in a poor visitation code. Forceinline mark on those internal functions perceptibly improves the situation, though does not mitigate it
    completely.
    
    LLVM ticket https://bugs.llvm.org/show_bug.cgi?id=41491
    Kojoley committed Apr 14, 2019
    Copy the full SHA
    dd9b0c9 View commit details
    Browse the repository at this point in the history