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]

Re: [patch, bootstrap, hppa] Patch for bootstrap/40338


Here is a new version of my patch to fix the bootstrap of hppa.  By
adding -frandom-seed to TARGET_LIBGCC2_CFLAGS in pa specific t-* files I
can get the number of files with differences down to 2.  These two files
are lib2funcs.o and lib2funcs_s.o, both built from an assembly language 
file using preprocessing.  They come up different because the temporary
file name created for the preprocesser output is different in each run.

There doesn't seem to be a place to change how these are built, there is
no explicit rule in the PA specific makefiles or the general Makefile
for building lib2funcs.o (or lib2funcs_s.o) from lib2funcs.asm.  It
appears that they are  compiled via default make rules.  So rather then
create a new rule, and I can find no precedent for a specific rule used
to compile the sources specified by LIB2FUNCS_EXTRA, I would rather keep
my change that allows me to skip the comparision of these two files.  I
think creating a specific rule might screw up multilib support.  We can
compare the  rest of the libgcc files now so I narrowed the exclusion
down to the minimum needed (2 files).

I also removed './libgcc/*' from the list of standard compare exclusions
because I don't think it ever matches anything and I changed
'./gcc/ada/*tools/*' to 'gcc/ada/*tools/*' at Eric Botcazou's request.

Tested on PA to verify the fix and on IA64 to check for regressions,
no problems were found.

OK for checkin?

Steve Ellcey
sje@cup.hp.com



ChangeLog

2009-06-19  Steve Ellcey  <sje@cup.hp.com>

	PR bootstrap/40338
	* configure.ac (comparestring): Create new variable.
	* Makefile.tpl (comparestring): Use to skip some comparisions.
	* configure: Regenerate.
	* Makefile.in: Regenerate.


gcc/ChangeLog

2009-06-19  Steve Ellcey  <sje@cup.hp.com>

	PR bootstrap/40338
	* config/pa/t-pa-hpux10 (TARGET_LIBGCC2_CFLAGS): Add -frandom-seed.
	* config/pa/t-pa-hpux11 (TARGET_LIBGCC2_CFLAGS): Ditto.


Index: configure.ac
===================================================================
--- configure.ac	(revision 148688)
+++ configure.ac	(working copy)
@@ -3061,4 +3061,13 @@ AC_SUBST(docdir)
 AC_SUBST(pdfdir)
 AC_SUBST(htmldir)
 
+# Specify the comparision to do during bootstrap.
+
+comparestring="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*"
+case "$target" in
+  hppa*64*-*-hpux*) ;;
+  hppa*-*-hpux*) comparestring="gcc/cc*-checksum\$(objext) | */libgcc/lib2funcs* | gcc/ada/*tools/*" ;;
+esac
+AC_SUBST(comparestring)
+
 AC_OUTPUT(Makefile)
Index: Makefile.tpl
===================================================================
--- Makefile.tpl	(revision 148688)
+++ Makefile.tpl	(working copy)
@@ -1436,7 +1436,7 @@ do-clean: clean-stage[+id+]
 	  $(do-[+compare-target+]) > /dev/null 2>&1; \
 	  if test $$? -eq 1; then \
 	    case $$file in \
-	      gcc/cc*-checksum$(objext) | ./libgcc/* | ./gcc/ada/*tools/*) \
+	      @comparestring@) \
 	        echo warning: $$file differs ;; \
 	      *) \
 	        echo $$file differs >> .bad_compare ;; \
Index: gcc/config/pa/t-pa-hpux10
===================================================================
--- gcc/config/pa/t-pa-hpux10	(revision 148688)
+++ gcc/config/pa/t-pa-hpux10	(working copy)
@@ -1,2 +1,2 @@
-TARGET_LIBGCC2_CFLAGS = -fPIC -D_T_HPUX10
+TARGET_LIBGCC2_CFLAGS = -fPIC -frandom-seed=fixed-seed -D_T_HPUX10
 LIB2FUNCS_EXTRA=lib2funcs.asm quadlib.c
Index: gcc/config/pa/t-pa-hpux11
===================================================================
--- gcc/config/pa/t-pa-hpux11	(revision 148688)
+++ gcc/config/pa/t-pa-hpux11	(working copy)
@@ -1,2 +1,2 @@
-TARGET_LIBGCC2_CFLAGS = -fPIC
+TARGET_LIBGCC2_CFLAGS = -fPIC -frandom-seed=fixed-seed
 LIB2FUNCS_EXTRA=lib2funcs.asm quadlib.c


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