diff options
-rw-r--r-- | gcc/c/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/c/Make-lang.in | 11 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/Make-lang.in | 11 |
4 files changed, 28 insertions, 4 deletions
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index a90972e..ae62759 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,8 @@ +2016-05-03 Richard Biener <rguenther@suse.de> + + * Make-lang.in (cc1-checksum.c): For stage-final re-use + the checksum from the previous stage. + 2016-05-02 Cesar Philippidis <cesar@codesourcery.com> * c-parser.c (c_parser_oacc_all_clauses): Update call to diff --git a/gcc/c/Make-lang.in b/gcc/c/Make-lang.in index 8525707..34c8b0e 100644 --- a/gcc/c/Make-lang.in +++ b/gcc/c/Make-lang.in @@ -61,11 +61,18 @@ c_OBJS = $(C_OBJS) cc1-checksum.o c/gccspec.o c-warn = $(STRICT_WARN) # compute checksum over all object files and the options +# re-use the checksum from the prev-final stage so it passes +# the bootstrap comparison and allows comparing of the cc1 binary cc1-checksum.c : build/genchecksum$(build_exeext) checksum-options \ $(C_OBJS) $(BACKEND) $(LIBDEPS) - build/genchecksum$(build_exeext) $(C_OBJS) $(BACKEND) $(LIBDEPS) \ + if [ -f ../stage_final ] \ + && cmp -s ../stage_current ../stage_final; then \ + cp ../prev-gcc/cc1-checksum.c cc1-checksum.c; \ + else \ + build/genchecksum$(build_exeext) $(C_OBJS) $(BACKEND) $(LIBDEPS) \ checksum-options > cc1-checksum.c.tmp && \ - $(srcdir)/../move-if-change cc1-checksum.c.tmp cc1-checksum.c + $(srcdir)/../move-if-change cc1-checksum.c.tmp cc1-checksum.c; \ + fi cc1$(exeext): $(C_OBJS) cc1-checksum.o $(BACKEND) $(LIBDEPS) +$(LLINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \ diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 990ba0f..497bc0e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2016-05-03 Richard Biener <rguenther@suse.de> + + * Make-lang.in (cc1plus-checksum.c): For stage-final re-use + the checksum from the previous stage. + 2016-05-02 David Malcolm <dmalcolm@redhat.com> PR c++/62314 diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in index 8770f6f..625a77c 100644 --- a/gcc/cp/Make-lang.in +++ b/gcc/cp/Make-lang.in @@ -90,11 +90,18 @@ c++_OBJS = $(CXX_OBJS) cc1plus-checksum.o cp/g++spec.o cp-warn = $(STRICT_WARN) # compute checksum over all object files and the options +# re-use the checksum from the prev-final stage so it passes +# the bootstrap comparison and allows comparing of the cc1 binary cc1plus-checksum.c : build/genchecksum$(build_exeext) checksum-options \ $(CXX_OBJS) $(BACKEND) $(LIBDEPS) - build/genchecksum$(build_exeext) $(CXX_OBJS) $(BACKEND) $(LIBDEPS) \ + if [ -f ../stage_final ] \ + && cmp -s ../stage_current ../stage_final; then \ + cp ../prev-gcc/cc1plus-checksum.c cc1plus-checksum.c; \ + else \ + build/genchecksum$(build_exeext) $(CXX_OBJS) $(BACKEND) $(LIBDEPS) \ checksum-options > cc1plus-checksum.c.tmp && \ - $(srcdir)/../move-if-change cc1plus-checksum.c.tmp cc1plus-checksum.c + $(srcdir)/../move-if-change cc1plus-checksum.c.tmp cc1plus-checksum.c; \ + fi cc1plus$(exeext): $(CXX_OBJS) cc1plus-checksum.o $(BACKEND) $(LIBDEPS) +$(LLINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \ |