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
commit 01b8ebb6e5940eca6d158dc793424a6580c90998
Author: segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed May 4 20:54:47 2016 +0000
cfgcleanup: Fold jumps and conditional branches with returns
This patch makes cfgcleanup optimize jumps to returns. There are three
cases this handles:
-- A jump to a return; this is simplified to just that return.
-- A conditional branch to a return; simplified to a conditional return.
-- A conditional branch that falls through to a return. This is simplified
to a conditional return (with the condition inverted), falling through
to a jump to the original destination. That jump can then be optimized
further, as usual.
This handles all cases the current function.c does, and a few it misses.
* cfgcleanup.c (bb_is_just_return): New function.
(try_optimize_cfg): Simplify jumps to return, branches to return,
and branches around return.
Regards,
Leslie Zhai
The text was updated successfully, but these errors were encountered:
Hi fellows,
As PR83496 mentioned:
Testcase is wrongly lowering to:
GCC 8.x still reproducible the key point might be
bb_is_just_return
:Regards,
Leslie Zhai
The text was updated successfully, but these errors were encountered: