On 02/27/14 12:50, H.J. Lu wrote:
On Thu, Feb 27, 2014 at 11:02 AM, Jeff Law <l...@redhat.com> wrote:

As discussed in 49847, a few years ago GCC was changed to add EH edges for
exceptions that might arise from a floating point comparison.  That change
made it possible for a cc0-setter and cc0-user to end up in different
blocks, separated by a NOTE.

After discussing reverting the change, duplicating the cc0-setter and a
couple other ideas, eventually Richi and myself settled on relaxing the long
standing restrictions on the relative locations of the cc0 setter and cc0
user.

We agreed to update the documentation and fault in fixes due to low priority
of cc0 targets (and doubly so since this really only affects cc0 targets
with used with non-call-exceptions).

This patch updates the documentation and fixes the only known failure due to
this change in cse.c with a patch from Mikael.

Tested with a cross compiler.  I'll probably fire off a m68k bootstrap for
good measure, but it'll be several days before that completes.

Installed on the trunk.

Jeff

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8a78716..a20cee3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2014-02-27  Mikael Pettersson  <mi...@it.uu.se>
+           Jeff Law  <l...@redhat.com>
+
+       PR rtl-optimization/49847
+       * cse.c (fold_rtx) Handle case where cc0 setter and cc0 user
+       are in different blocks.
+       * doc/tm.texi (Condition Code Status): Update documention for
+       relative locations of cc0-setter and cc0-user.
+

This breaks bootstrap:

You should edit ../../src-trunk/gcc/doc/tm.texi.in rather than
../../src-trunk/gcc/doc/tm.texi .
make[6]: *** [s-tm-texi] Error 1
make[6]: *** Waiting for unfinished jobs....
Nuts.  Sorry.  Thanks for fixing it.
jeff

Reply via email to