On 10/29/13 09:14, Andrew Pinski wrote:
On Mon, Oct 28, 2013 at 10:51 PM, Jeff Law <l...@redhat.com> wrote:
On 10/27/13 12:55, Andrew Pinski wrote:

Here is my latest patch which adds the testcases from Zhenqiang's
patch and fixes item 1 and 2.

OK?  Bootstrapped and tested on x86_64-linux-gnu with no regressions.

Thanks,
Andrew Pinski

ChangeLog:
* tree-ssa-ifcombine.c: Include rtl.h and tm_p.h.
(ifcombine_ifandif): Handle cases where
maybe_fold_and_comparisons fails, combining the branches
anyways.
(tree_ssa_ifcombine): Inverse the order of
the basic block walk, increases the number of combinings.
* gimple.h (gsi_start_nondebug_after_labels_bb): New function.


testsuite/ChangeLog:

* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: New test case.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: New test case.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: New test case.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: New test case.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: New test case.
* gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: New test case.

* gcc.dg/tree-ssa/phi-opt-9.c: Use a function call to prevent
conditional move to be used.
* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Remove check for "one or more
intermediate".

I don't be able to look at this in any depth tonight.  However, I would ask
that you pass along the dump file for ssa-dom-thread-3.c so that I can
evaluate the correctness of your change better.

We no longer jump thread one case as we have:

   <bb 2>:
   var_3 = var_1(D)->ssa_name.var;
   _4 = var_1(D)->base.code;
   if (_4 == 1)
     goto <bb 3>;
   else
     goto <bb 5>;

...

  <bb 5>:
   _6 = var_3->base.code;
   _13 = _4 != 1;
   _14 = _6 != 0;
   _12 = _13 & _14;
   if (_12 != 0)
     goto <bb 8>;
   else
     goto <bb 6>;

Attached is the full dump too.
I mostly wanted to verify whether or not the test was worth running. It isn't after this change. It no longer tests for the threader's ability to clone an intermediate block to isolate a path to a successor of the intermediate that is threadable.


Please just remove ssa-dom-thread-3.c as part of this checkin.

Thanks,

Jeff

Reply via email to