This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

SH: Bootstrap failure


Hi,

Current mainline fails for sh4-unknown-linux-gnu when building
libstdc++v3 with duplicate labels:

/exp/ldroot/dodes/xsh-gcc-orig/./gcc/xgcc -shared-libgcc -B/exp/ldroot/dodes/xsh-gcc-orig/./gcc/ -nostdinc++ -L/exp/ldroot/dodes/xsh-gcc-orig/sh4-unknown-linux-gnu/libstdc++-v3/src -L/exp/ldroot/dodes/xsh-gcc-orig/sh4-unknown-linux-gnu/libstdc++-v3/src/.libs -B/usr/local/sh4-unknown-linux-gnu/bin/ -B/usr/local/sh4-unknown-linux-gnu/lib/ -isystem /usr/local/sh4-unknown-linux-gnu/include -isystem /usr/local/sh4-unknown-linux-gnu/sys-include -I/exp/ldroot/dodes/xsh-gcc-orig/sh4-unknown-linux-gnu/libstdc++-v3/include/sh4-unknown-linux-gnu -I/exp/ldroot/dodes/xsh-gcc-orig/sh4-unknown-linux-gnu/libstdc++-v3/include -I/exp/ldroot/dodes/ORIG/gcc/libstdc++-v3/libsupc++ -g -O2 -D_GNU_SOURCE -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -c ../../../../ORIG/gcc/libstdc++-v3/src/codecvt.cc  -fPIC -DPIC -o .libs/codecvt.o
/tmp/cc6YpO8d.s: Assembler messages:
/tmp/cc6YpO8d.s:219: Error: symbol `.LBE14' is already defined
/tmp/cc6YpO8d.s:220: Error: symbol `.LBE13' is already defined

I've found that it started after an Ian's patch:

2005-03-30  Ian Lance Taylor  <ian@airs.com>

        * final.c (final): Remove prescan parameter.  Change all callers.
        (final_scan_insn): Remove prescan parameter.  Change all callers.

(http://gcc.gnu.org/ml/gcc-patches/2005-03/msg02561.html)

and it goes away if I revert a hunk of the patch:

@@ -2383,21 +2357,11 @@ final_scan_insn (rtx insn, FILE *file, i
 	       emit them before the peephole.  */
 	    if (next != 0 && next != NEXT_INSN (insn))
 	      {
-		rtx note, prev = PREV_INSN (insn);
+		rtx note;
 
 		for (note = NEXT_INSN (insn); note != next;
 		     note = NEXT_INSN (note))
-		  final_scan_insn (note, file, optimize, prescan, nopeepholes, seen);
-
-		/* In case this is prescan, put the notes
-		   in proper position for later rescan.  */
-		note = NEXT_INSN (insn);
-		PREV_INSN (note) = prev;
-		NEXT_INSN (prev) = note;
-		NEXT_INSN (PREV_INSN (next)) = insn;
-		PREV_INSN (insn) = PREV_INSN (next);
-		NEXT_INSN (insn) = next;
-		PREV_INSN (next) = insn;
+		  final_scan_insn (note, file, optimize, nopeepholes, seen);
 	      }
 
 	    /* PEEPHOLE might have changed this.  */

Perhaps the comment is out-dated but the code is still needed, isn't it?

Regards,
	kaz


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]