public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-1257] For obj-c stage-final re-use the checksum from the previous stage
@ 2021-06-07 11:47 Bernd Edlinger
0 siblings, 0 replies; only message in thread
From: Bernd Edlinger @ 2021-06-07 11:47 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:3e00f8ddb729913831e494f87207b658292e6c2b
commit r12-1257-g3e00f8ddb729913831e494f87207b658292e6c2b
Author: Bernd Edlinger <bernd.edlinger@hotmail.de>
Date: Fri May 28 06:54:13 2021 +0200
For obj-c stage-final re-use the checksum from the previous stage
This silences the stage compare.
gcc/objc:
2021-06-07 Bernd Edlinger <bernd.edlinger@softing.com>
* Make-lang.in (cc1obj-checksum.c): For stage-final re-use
the checksum from the previous stage.
gcc/objcp:
2021-06-07 Bernd Edlinger <bernd.edlinger@softing.com>
* Make-lang.in (cc1objplus-checksum.c): For stage-final re-use
the checksum from the previous stage.
Diff:
---
gcc/objc/Make-lang.in | 14 +++++++++++---
gcc/objcp/Make-lang.in | 15 +++++++++++----
2 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in
index c91148a578e..901114066d5 100644
--- a/gcc/objc/Make-lang.in
+++ b/gcc/objc/Make-lang.in
@@ -57,11 +57,19 @@ OBJC_OBJS = objc/objc-lang.o objc/objc-act.o hash-table.o \
objc_OBJS = $(OBJC_OBJS) cc1obj-checksum.o
+# 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
cc1obj-checksum.c : build/genchecksum$(build_exeext) checksum-options \
$(OBJC_OBJS) $(C_AND_OBJC_OBJS) $(BACKEND) $(LIBDEPS)
- build/genchecksum$(build_exeext) $(OBJC_OBJS) $(C_AND_OBJC_OBJS) \
- $(BACKEND) $(LIBDEPS) checksum-options > cc1obj-checksum.c.tmp && \
- $(srcdir)/../move-if-change cc1obj-checksum.c.tmp cc1obj-checksum.c
+ if [ -f ../stage_final ] \
+ && cmp -s ../stage_current ../stage_final; then \
+ cp ../prev-gcc/$@ $@; \
+ else \
+ build/genchecksum$(build_exeext) $(OBJC_OBJS) $(C_AND_OBJC_OBJS) \
+ $(BACKEND) $(LIBDEPS) checksum-options > $@.tmp && \
+ $(srcdir)/../move-if-change $@.tmp $@; \
+ fi
cc1obj$(exeext): $(OBJC_OBJS) $(C_AND_OBJC_OBJS) cc1obj-checksum.o $(BACKEND) \
$(LIBDEPS) $(objc.prev)
diff --git a/gcc/objcp/Make-lang.in b/gcc/objcp/Make-lang.in
index dfa4d230eac..3ecc50b53bd 100644
--- a/gcc/objcp/Make-lang.in
+++ b/gcc/objcp/Make-lang.in
@@ -60,12 +60,19 @@ OBJCXX_OBJS = objcp/objcp-act.o objcp/objcp-lang.o objcp/objcp-decl.o \
obj-c++_OBJS = $(OBJCXX_OBJS) cc1objplus-checksum.o
+# 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
cc1objplus-checksum.c : build/genchecksum$(build_exeext) checksum-options \
$(OBJCXX_OBJS) $(BACKEND) $(CODYLIB) $(LIBDEPS)
- build/genchecksum$(build_exeext) $(OBJCXX_OBJS) $(BACKEND) $(CODYLIB) \
- $(LIBDEPS) checksum-options > cc1objplus-checksum.c.tmp && \
- $(srcdir)/../move-if-change cc1objplus-checksum.c.tmp \
- cc1objplus-checksum.c
+ if [ -f ../stage_final ] \
+ && cmp -s ../stage_current ../stage_final; then \
+ cp ../prev-gcc/$@ $@; \
+ else \
+ build/genchecksum$(build_exeext) $(OBJCXX_OBJS) $(BACKEND) \
+ $(CODYLIB) $(LIBDEPS) checksum-options > $@.tmp && \
+ $(srcdir)/../move-if-change $@.tmp $@; \
+ fi
cc1objplus$(exeext): $(OBJCXX_OBJS) cc1objplus-checksum.o $(BACKEND) \
$(CODYLIB) $(LIBDEPS) $(obj-c++.prev)
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-06-07 11:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-07 11:47 [gcc r12-1257] For obj-c stage-final re-use the checksum from the previous stage Bernd Edlinger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).