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
playground::can_represent_as_f64:moveax,64movecx,64testrdi,rdi ; Initial test for zero and branchje .LBB0_2bsrrcx,rdixorrcx,63.LBB0_2:testrdi,rdi ; Second test for zero and branchje .LBB0_4bsfrax,rdi.LBB0_4:addecx,eaxcmpecx,10setaalret
Instead of performing the comparison twice, the code should immediately branch to LBB0_4.
The text was updated successfully, but these errors were encountered:
We expand the intrinsics in -codegenprepare, and I'm not sure where we would solve this. machine-cse seems like the most likely candidate, but it would require tracking eflags state across basic blocks. Not sure if we do that:
Extended Description
Rust code:
LLVM IR:
Assembly:
Instead of performing the comparison twice, the code should immediately branch to LBB0_4.
The text was updated successfully, but these errors were encountered: