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

Make codegen treat inline fns the same as regular fns in non-opt builds #54089

Open
michaelwoerister opened this issue Sep 9, 2018 · 3 comments
Labels
A-codegen Area: Code generation A-incr-comp Area: Incremental compilation I-compiletime Issue: Problems and improvements with respect to compile times. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-compiler-performance Working group: Compiler Performance WG-llvm Working group: LLVM backend code generation

Comments

@michaelwoerister
Copy link
Member

See #53963 (comment) and following. There's no need to create private duplicates of #[inline] functions in debug builds, since we don't even run an inlining pass there.

@michaelwoerister michaelwoerister added A-codegen Area: Code generation I-compiletime Issue: Problems and improvements with respect to compile times. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-compiler-performance Working group: Compiler Performance WG-llvm Working group: LLVM backend code generation labels Sep 9, 2018
@michaelwoerister michaelwoerister changed the title Make the codegen treat inline fns the same as regular fns in non-opt builds Make codegen treat inline fns the same as regular fns in non-opt builds Sep 9, 2018
@jonas-schievink
Copy link
Contributor

Wow, is this still an issue today?

@michaelwoerister
Copy link
Member Author

We generate an internal copy per crate (but not per object file). We could probably make use of the -Zshare-generics infrastructure for making inline functions available downstream.

Wow, is this still an issue today?

I think the tone of this comment is inappropriate. Please keep it civil.

@jonas-schievink
Copy link
Contributor

Sorry, I didn't mean to come across like that. I was just surprised to see this issue still open, since I though this was already implemented.

@wesleywiser wesleywiser added the A-incr-comp Area: Incremental compilation label Aug 19, 2020
bors added a commit to rust-lang-ci/rust that referenced this issue Jan 8, 2021
…idtwco,wesleywiser

Do not make local copies of inline fns in debug mode

r? `@wesleywiser`

cc `@rust-lang/wg-incr-comp`

If this is correct it supersedes rust-lang#76889

Related to rust-lang#54089
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-codegen Area: Code generation A-incr-comp Area: Incremental compilation I-compiletime Issue: Problems and improvements with respect to compile times. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-compiler-performance Working group: Compiler Performance WG-llvm Working group: LLVM backend code generation
Projects
None yet
Development

No branches or pull requests

3 participants