[Bug target/62631] gcc.dg/tree-ssa/ivopts-lt-2.c FAILs
amker at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Feb 4 04:06:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62631
--- Comment #15 from amker at gcc dot gnu.org ---
(In reply to amker from comment #14)
> (In reply to Eric Botcazou from comment #12)
> > I'm about to install a patch that changes the costs on SPARC 64-bit to:
> >
> > Use 1:
> > cand cost compl. depends on
> > 0 4 0 inv_expr:0
> > 1 8 0
> > 4 6 0 inv_expr:1
> > 5 0 0
> > 6 0 0
> >
> > but this doesn't change the outcome of the test. :-(
>
> I will have a look why it fails with refined cost.
>
> Thanks,
> bin
The cost of expression "p + ((sizetype)(99 - i_6(D)) + 1) * 4" computed using
normal +/-/* operators on sparc64 is 18, but the cost is 32 if it is computed
as "p + ((sizetype)(99 - i_6(D)) + 1) << 2", which is returned by
get_shiftadd_cost.
>From the assembly code, it seems the computation is expensive on sparc64, I may
skip the test for these architectures if no other solutions.
Thanks.
More information about the Gcc-bugs
mailing list