[Bug c/106574] New: gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-09 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 Bug ID: 106574 Summary: gcc 12 with O3 leads to failures in glibc's y1f128 tests Product: gcc Version: 12.1.1 Status: UNCONFIRMED Severity: normal Pr

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-09 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #1 from Michael Hudson-Doyle --- oops forgot the link to my glibc bug https://sourceware.org/bugzilla/show_bug.cgi?id=29463

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-09 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #3 from Michael Hudson-Doyle --- Certainly this could be "handled" by bumping the tolerance I guess. Not sure how to tell if that is appropriate though...

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-10 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #6 from Michael Hudson-Doyle --- Are there any tips as to how to diagnose this further? I tried putting a math_opt_barrier on this line: https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/ieee754/ldbl-128/e_j1l.c;h=54c457681ae

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-10 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #8 from Michael Hudson-Doyle --- I just changed z = xx * xx; to z = math_opt_barrier(xx * xx); which perhaps isn't sufficient. But my reading of the assembly is that the issue is that some of the math code is being

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-10 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #9 from Michael Hudson-Doyle --- I uploaded the object file with the bad code to https://people.canonical.com/~mwh/e_j1f128.os.

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-10 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #10 from Michael Hudson-Doyle --- FWIW, I see a similar error on ppc64el with what looks like a similar cause. (I also see other errors that do not go away with s/O3/O2/ so that might be something slightly different). O3: (kinetic

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-08-11 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 --- Comment #12 from Michael Hudson-Doyle --- Ah OK, yes that fixes the failure. Does this mean all uses of SET_RESTORE_ROUND* should be using math_opt_barrier / math_force_eval to avoid this issue? Sounds awkward. I guess having a macro to cal

[Bug target/106574] gcc 12 with O3 leads to failures in glibc's y1f128 tests

2022-09-06 Thread michael.hudson at canonical dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574 Michael Hudson-Doyle changed: What|Removed |Added Resolution|--- |INVALID Status|UNCON