You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.C-bugCategory: This is a bug.I-slowIssue: Problems and improvements with respect to performance of generated code.
If you look at the emitted mir, I think what's causing this is that an extra temporary is used to store the enum type and is not const as is marked in next0. I'm curious why the 2nd implementation doesn't have E::E1-3 marked as const?
nikic
added
the
I-slow
Issue: Problems and improvements with respect to performance of generated code.
label
Jun 7, 2021
A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.C-bugCategory: This is a bug.I-slowIssue: Problems and improvements with respect to performance of generated code.
https://godbolt.org/z/fYfohcsax
Optimized assembly on stable 1.52.0 and nightly:
I expected next1 to compile to the same assembly as next0.
Edit 2022-12-01: Not fixed on current stable 1.65 and nightly.
The text was updated successfully, but these errors were encountered: