[Bug target/87079] nios2 optimization for size - case of regression relatively to 5.3.0

2018-11-03 Thread sandra at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87079

sandra at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from sandra at gcc dot gnu.org ---
Fixed on trunk.

[Bug target/87079] nios2 optimization for size - case of regression relatively to 5.3.0

2018-11-03 Thread sandra at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87079

--- Comment #2 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Sat Nov  3 18:12:44 2018
New Revision: 265770

URL: https://gcc.gnu.org/viewcvs?rev=265770=gcc=rev
Log:
2018-11-03  Sandra Loosemore  

PR target/87079

gcc/
* config/nios2/nios2.c (nios2_rtx_costs): Recognize sidi3
pattern.

gcc/testsuite/
* gcc.target/nios2/pr87079-1.c: New.
* gcc.target/nios2/pr87079-2.c: New.

Added:
trunk/gcc/testsuite/gcc.target/nios2/pr87079-1.c
trunk/gcc/testsuite/gcc.target/nios2/pr87079-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/nios2/nios2.c
trunk/gcc/testsuite/ChangeLog

[Bug target/87079] nios2 optimization for size - case of regression relatively to 5.3.0

2018-11-01 Thread sandra at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87079

sandra at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-11-02
 CC||sandra at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |sandra at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #1 from sandra at gcc dot gnu.org ---
This looks like a problem with the nios2 instruction costs.  Things are going
wrong in expand_widening_mult (in expmed.c); compiling with -O2 takes the
expand_binop path at the end to use the provided umulsidi3 expander, but with
-Os it thinks the expand_mult_const path is better.  I'll try to poke at this
some more and come up with a patch.