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

mark build::cfg::start_new_block as inline(never) #41015

Merged
merged 1 commit into from
Apr 6, 2017

Commits on Apr 2, 2017

  1. mark build::cfg::start_new_block as inline(never)

    LLVM has a bug - PR32488 - where it fails to deduplicate allocas in some
    circumstances. The function `start_new_block` has allocas totalling 1216
    bytes, and when LLVM inlines several copies of that function into
    the recursive function `expr::into`, that function's stack space usage
    goes into tens of kiBs, causing stack overflows.
    
    Mark `start_new_block` as inline(never) to keep it from being inlined,
    getting stack usage under control.
    
    Fixes rust-lang#40493.
    Fixes rust-lang#40573.
    arielb1 committed Apr 2, 2017
    Configuration menu
    Copy the full SHA
    09ac56d View commit details
    Browse the repository at this point in the history