On Fri, Oct 30, 2015 at 9:27 PM, Jeff Law <l...@redhat.com> wrote: > On 10/30/2015 07:57 AM, Andreas Schwab wrote: >> >> I'm getting this regression on m68k: >> >> FAIL: gcc.dg/tree-ssa/ssa-thread-11.c scan-tree-dump vrp2 "FSM" >> >> The generated code looks equivalent, though. > > Definitely an artifact of differences in branch costing. Pondering the best > way to fix.
The usual list of targets and a dg-skip ... Or work towards eliminating those "early" target dependences introduced in our IL. Major effects are from LOGICAL_OP_NON_SHORT_CIRCUIT (boiling down to BRANCH_COST as default) and from PUSH_ARGS_REVERSED. Esp. the logical-op-non-short-circuit decisions are done a bit early (before profile-reading for example). So I'd rather keep the short-circuiting for all targets (for the GENERIC folding) and let ifcombine do the "heavy" lifting also taking into account branch predictability (and target preferences). Richard. > jeff