[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-10 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

Martin Liška  changed:

   What|Removed |Added

 Status|REOPENED|ASSIGNED

--- Comment #9 from Martin Liška  ---
I'll take a look.

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

--- Comment #8 from Segher Boessenkool  ---
I confirm this is caused by r278207.

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

--- Comment #7 from Segher Boessenkool  ---
Ah, -fdump-ipa-all-all .  So it seems like ppc-round.c.072i.icf is what is
wrong; it says

Equals called for: round_float_uint/3:round_float_int/1 with result: true

Equals called for: round_double_uint/2:round_double_int/0 with result: true

(that is the first thing wrong I see).

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

--- Comment #6 from Segher Boessenkool  ---
It is still okay in ppc-round.c.048t.local-fnsummary2 but it is wrong
in ppc-round.c.088t.fixup_cfg3 (the pass immediately after it, at -O2).

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-08 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

--- Comment #5 from Segher Boessenkool  ---
Actually, this is simply wrong.

===
;; Function round_double_uint (round_double_uint, funcdef_no=5, decl_uid=2879,
cgraph_uid=3, symbol_order=2)

round_double_uint (double a)
{
  int _4;
  double _5;

;;   basic block 2, loop depth 0
;;pred:   ENTRY
  _4 = (int) a_1(D);
  _5 = (double) _4;
  return _5;
;;succ:   EXIT

}
===

It is wrong in gimple already (should be unsigned int, not int).

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2020-02-07 Thread seurer at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

seurer at gcc dot gnu.org changed:

   What|Removed |Added

 Target|powerpc64-linux-gnu |powerpc64*-linux-gnu
 Status|RESOLVED|REOPENED
 CC||segher at gcc dot gnu.org
   Host|powerpc64-linux-gnu |powerpc64*-linux-gnu
 Resolution|DUPLICATE   |---
  Build|powerpc64-linux-gnu |powerpc64*-linux-gnu

--- Comment #4 from seurer at gcc dot gnu.org ---
The fix for pr92529 does not fix these.

What changed is some of the instructions generated.  For example, in
gcc.target/powerpc/ppc-round.c

round_double_uint:
.LFB2:
.cfi_startproc
fctiwuz 1,1
addi 9,1,-16
stfiwx 1,0,9
ori 2,2,0
lfiwzx 1,0,9
fcfid 1,1
blr

became

round_double_uint:
.LFB5:
.cfi_startproc
fctiwz 1,1
addi 9,1,-16
stfiwx 1,0,9
ori 2,2,0
lfiwax 1,0,9
fcfid 1,1
blr

They both apparently work (albeit aren't close to optimal).  So I think the
solution here is to update the expected instruction counts and maybe make a
TODO somewhere to see if the generated code could be made better.

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2019-11-18 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

Martin Liška  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #3 from Martin Liška  ---
Dup.

*** This bug has been marked as a duplicate of bug 92529 ***

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2019-11-15 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |10.0

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2019-11-15 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2019-11-15
   Assignee|unassigned at gcc dot gnu.org  |marxin at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #2 from Martin Liška  ---
I'll take a look.

[Bug target/92518] [10 regression] ppc rounding tests fail after r278207

2019-11-14 Thread seurer at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92518

seurer at gcc dot gnu.org changed:

   What|Removed |Added

 CC||marxin at gcc dot gnu.org
Summary|[10 regression] ppc |[10 regression] ppc
   |rounding tests fail on  |rounding tests fail after
   |power 7 (only) after|r278207
   |r278207 |

--- Comment #1 from seurer at gcc dot gnu.org ---
Upon further testing they fail on power 8 and 9 as well as power 7 both BE and
LE.