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: VTA merge - buildopts


buildopts (4K) - new BUILD_CONFIG options that can test VTA more thoroughly

Index: gcc/doc/install.texi
===================================================================
--- gcc/doc/install.texi.orig	2009-06-05 04:56:43.000000000 -0300
+++ gcc/doc/install.texi	2009-06-05 05:03:03.000000000 -0300
@@ -2041,7 +2041,32 @@ Analogous to @code{bootstrap-O1}.
 
 @item @samp{bootstrap-debug}
 Builds stage2 without debug information, and uses
-@file{contrib/compare-debug} to compare object files.
+@file{contrib/compare-debug} to compare object files.  If
+@code{BOOT_CFLAGS} is overridden so as to not enable debug information,
+stage2 will have it, and stage3 won't.
+
+@item @samp{bootstrap-debug-lib}
+Toggles debug information generation in stage2, like
+@file{bootstrap-debug}, and enables internal comparison
+(@option{-fcompare-debug}) with and without debug information in stage3,
+and internal comparison with and without variable tracking at
+assignments (VTA) on stage4.  As for libraries, it toggles debug
+information generation for libraries on stage1, enables internal
+comparison with and without VTA on stage2, internal comparison with and
+without debug information in stage3 (all libraries, unlike previous
+stages that only build libgcc), and internal comparison with and without
+VTA on stage4.
+
+@item @samp{bootstrap-debug-ckovw}
+Arranges for error messages to be issued if the compiler built on any
+stage is run without the option @option{-fcompare-debug}.  This is
+useful to verify the full coverage of the @code{bootstrap-debug-lib}
+option.
+
+@item @samp{bootstrap-time}
+Arranges for the run time of each program started by the GCC driver,
+built in any stage, to be logged to @file{time.log}, in the top level of
+the build tree.
 
 @end table
 
Index: config/bootstrap-debug.mk
===================================================================
--- config/bootstrap-debug.mk.orig	2009-06-05 04:56:43.000000000 -0300
+++ config/bootstrap-debug.mk	2009-06-05 05:03:04.000000000 -0300
@@ -1,2 +1,2 @@
-STAGE2_CFLAGS += -g0
+STAGE2_CFLAGS += -gtoggle
 do-compare = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2
Index: config/bootstrap-time.mk
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ config/bootstrap-time.mk	2009-06-05 05:03:04.000000000 -0300
@@ -0,0 +1,2 @@
+BOOT_CFLAGS += -time=$(shell pwd)/time.log
+TFLAGS += -time=$(shell pwd)/time.log
Index: config/bootstrap-debug-ckovw.mk
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ config/bootstrap-debug-ckovw.mk	2009-06-05 05:03:04.000000000 -0300
@@ -0,0 +1,12 @@
+# These arrange for a simple warning to be issued if -fcompare-debug
+# is not given.
+# BOOT_CFLAGS += -fcompare-debug="-w%n-fcompare-debug not overridden"
+# TFLAGS += -fcompare-debug="-w%n-fcompare-debug not overridden"
+
+# GCC_COMPARE_DEBUG="-w%n-fcompare-debug not overridden";
+
+FORCE_COMPARE_DEBUG = \
+	GCC_COMPARE_DEBUG=$${GCC_COMPARE_DEBUG--fcompare-debug-not-overridden}; \
+	export GCC_COMPARE_DEBUG;
+POSTSTAGE1_HOST_EXPORTS += $(FORCE_COMPARE_DEBUG)
+BASE_TARGET_EXPORTS += $(FORCE_COMPARE_DEBUG)
Index: config/bootstrap-debug-lib.mk
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ config/bootstrap-debug-lib.mk	2009-06-05 05:03:04.000000000 -0300
@@ -0,0 +1,13 @@
+# Stage1 compiler may not support this flag.
+# STAGE1_CFLAGS += -fcompare-debug=-gtoggle
+STAGE2_CFLAGS += -gtoggle -fcompare-debug=
+STAGE3_CFLAGS += -fcompare-debug=-gtoggle
+STAGE4_CFLAGS += -fcompare-debug=-fvar-tracking-assignments-toggle
+# This might be enough after testing:
+# TFLAGS += -fcompare-debug=-g0
+# Don't use -gtoggle for target libs, this breaks crtstuff on ppc.
+STAGE1_TFLAGS += -fcompare-debug=
+STAGE2_TFLAGS += -fcompare-debug=-fvar-tracking-assignments-toggle
+STAGE3_TFLAGS += -fcompare-debug=-g0
+STAGE4_TFLAGS += -fcompare-debug=-fvar-tracking-assignments-toggle
+do-compare = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2
-- 
Alexandre Oliva, freedom fighter    http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist      Red Hat Brazil Compiler Engineer

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