Module Name:    src
Committed By:   hgutch
Date:           Mon Jul  5 10:34:26 UTC 2021

Modified Files:
        src/external/gpl3/gcc.old/dist/gcc/config/sh: sh.md
        src/external/gpl3/gcc/dist/gcc/config/sh: sh.md
        src/usr.bin/xlint/lint1: Makefile

Log Message:
GCC git commit 91f66e78cc141da77ff9e0e3c8519e1af3f26c07[1] introduced
a regression in sh.  In addition to the intended change (based on the
commit message), an apparently unintended change was made, inverting a
comparison.  This broke sh builds and our workaround (so far) was to
compile xlint/lint1 with -O0.

Revert the comparison to what it was before and remove the -O0 hack
from xlint/lint1.

[1] 
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=91f66e78cc141da77ff9e0e3c8519e1af3f26c07


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md
cvs rdiff -u -r1.1.1.16 -r1.2 src/external/gpl3/gcc/dist/gcc/config/sh/sh.md
cvs rdiff -u -r1.77 -r1.78 src/usr.bin/xlint/lint1/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md
diff -u src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md:1.10 src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md:1.11
--- src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md:1.10	Fri Apr  9 23:14:34 2021
+++ src/external/gpl3/gcc.old/dist/gcc/config/sh/sh.md	Mon Jul  5 10:34:26 2021
@@ -842,7 +842,7 @@
   if (SUBREG_P (reg))
     reg = SUBREG_REG (reg);
   gcc_assert (REG_P (reg));
-  if (find_regno_note (curr_insn, REG_DEAD, REGNO (reg)) != NULL_RTX)
+  if (find_regno_note (curr_insn, REG_DEAD, REGNO (reg)) == NULL_RTX)
     FAIL;
 
   /* FIXME: Maybe also search the predecessor basic blocks to catch

Index: src/external/gpl3/gcc/dist/gcc/config/sh/sh.md
diff -u src/external/gpl3/gcc/dist/gcc/config/sh/sh.md:1.1.1.16 src/external/gpl3/gcc/dist/gcc/config/sh/sh.md:1.2
--- src/external/gpl3/gcc/dist/gcc/config/sh/sh.md:1.1.1.16	Sat Apr 10 22:09:50 2021
+++ src/external/gpl3/gcc/dist/gcc/config/sh/sh.md	Mon Jul  5 10:34:25 2021
@@ -842,7 +842,7 @@
   if (SUBREG_P (reg))
     reg = SUBREG_REG (reg);
   gcc_assert (REG_P (reg));
-  if (find_regno_note (curr_insn, REG_DEAD, REGNO (reg)) != NULL_RTX)
+  if (find_regno_note (curr_insn, REG_DEAD, REGNO (reg)) == NULL_RTX)
     FAIL;
 
   /* FIXME: Maybe also search the predecessor basic blocks to catch

Index: src/usr.bin/xlint/lint1/Makefile
diff -u src/usr.bin/xlint/lint1/Makefile:1.77 src/usr.bin/xlint/lint1/Makefile:1.78
--- src/usr.bin/xlint/lint1/Makefile:1.77	Sun Jul  4 09:13:59 2021
+++ src/usr.bin/xlint/lint1/Makefile	Mon Jul  5 10:34:26 2021
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.77 2021/07/04 09:13:59 rillig Exp $
+#	$NetBSD: Makefile,v 1.78 2021/07/05 10:34:26 hgutch Exp $
 
 .include <bsd.own.mk>
 
@@ -26,12 +26,6 @@ CPPFLAGS+=	${DEBUG:D-DDEBUG}
 
 COPTS.err.c+=	${${ACTIVE_CC} == "clang":? -Wno-format-nonliteral :}
 
-# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101177
-.if ${HAVE_GCC:U0} >= 9 &&	\
-	(${MACHINE_ARCH} == "sh3el" || ${MACHINE_ARCH} == "sh3eb")
-COPTS.lex.c+=	-O0
-.endif
-
 BINDIR=		/usr/libexec
 
 CLEANFILES+=	${MAN}

Reply via email to