Commit Graph

493 Commits

Author SHA1 Message Date
Caroline Tice
2077db1be5 Commit the vtable verification feature.
Commit the vtable verification feature.  This feature is designed to
detect, at run time, if/when the vtable pointer in a C++ object has
been corrupted, before allowing virtual calls through that pointer. 
If pointer corruption is detected, execution of the program is halted.

libstdc++-v3 ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        * fragment.am: Add XTEMPLATE_FLAGS.
        * configure.ac: Add definitions for --enable-vtable-verify.
        * acinclude.m4:  Add --enable-vtable-verify and
        --disable-vtable-verify; define --enable-vtable-verify; define
        VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS.
        * config/abi/pre/gnu.ver: Export symbols for vtable verification.
        * libsupc++/Makefile.am: Define vtv_sources and add it to
        libsupc___la_SOURCES and libsupc__convenience_la_SOURCES.
        * libsupc++/vtv_stubs.cc: New file.
        * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS.
        * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add
        VTV_CXXLINKFLAGS to CXXLINK.
        * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS
        to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK.
        * src/C++11/Makefile.am: Ditto.
        * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify.
        * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause
        cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS.
        * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate
        libvtv if --enable-vtable-verify was used; set cxxvtvflags; add
        cxxvtvflags to cxx_final.
        * testsuite/18_support/bad_exception/23591_thread-1.c: Add
        -fvtable-verify=none to compiler flags.
        * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none
        to compiler flags.
        * configure: Regenerated.
        * Makefile.in: Regenerated.
        * python/Makefile.in: Regenerated.
        * include/Makefile.in: Regenerated.
        * libsupc++/Makefile.in: Regenerated.
        * config.h.in: Regenerated.
        * po/Makefile.in: Regenerated.
        * src/Makefile.in: Regenerated.
        * src/c++98/Makefile.in: Regenerated.
        * src/c++11/Makefile.in: Regenerated.
        * doc/Makefile.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.

top level ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        * configure.ac: Add target-libvtv to target_libraries; disable libvtv
        on non-linux systems; add target-libvtv to noconfigdirs; add
        libsupc++/.libs to C++ library search paths.
        * configure: Regenerated.
        * Makefile.def: Add libvtv to target_modules; make libvtv depend on
        libstdc++ and libgcc.
        * Makefile.in: Regenerated.

include/ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        * vtv-change-permission.h: New file.

contrib/ChangeLog:
2013-08-06  Caroline Tice4  <cmtice@google.com>

        * gcc_update: Add libvtv files.

libgcc/ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        config.host (extra_parts): Add vtv_start.o, vtv_end.o
        vtv_start_preinit.o and vtv_end_preinit.o.
        configure.ac: Add code to check/set enable_vtable_verify.
        Makefile.in: Add rules to build vtv_*.o, if enable_vtable_verify is
        true.
        vtv_start_preinit.c: New file.
        vtv_end_preinit.c: New file.
        vtv_start.c: New file.
        vtv_end.c: New file.
        configure: Regenerated.

gcc/ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        * gcc.c (VTABLE_VERIFICATION_SPEC): New definition.
        (LINK_COMMAND_SPEC): Add VTABLE_VERIFICATION_SPEC.
        * tree-pass.h: Add pass_vtable_verify.
        * varasm.c (assemble_variable): Add code to properly set the comdat
        section and name for the .vtable_map_vars section.
        (assemble_vtyv_preinit_initializer): New function.
        (default_sectin_type_flags):  Make sure .vtable_map_vars section has
        LINK_ONCE flag.
        * output.h: Add function decl for assemble_vtv_preinit_initializer.
        * vtable-verify.c: New file.
        * vtable-verify.h: New file.
        * flag-types.h (enum vtv_priority): Defintions for flag_vtable_verify
        initialiation levels.
        * timevar.def (TV_VTABLE_VERIFICATION): New definition.
        * passes.def: Insert pass_vtable_verify.
        * aclocal.m4: Reorder includes.
        * doc/invoke.texi: Add documentation for the flags -fvtable-verify=,
	-fvtv-debug and -fvtv-counts.
        * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Add vtv_start*.o,
as appropriate, if -fvtable-verify=... is used.
        (GNU_USER_TARGET_ENDFILE_SPEC): Add vtv_end*.o as appropriate, if
        -fvtable-verify=... is used.
        * Makefile.in (OBJS):  Add vtable-verify.o to list.
        (vtable-verify.o): Add new build rule.
        (GTFILES): Add vtable-verify.c to list.
        * common.opt (fvtable-verify=): New flag.
        (vtv_priority): Values for fvtable-verify= flag.
        (fvtv-counts): New flag.
(fvtv-debug): New flag.
        * tree.h (save_vtable_map_decl): New extern function decl.


gcc/cp/ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        * Make-lang.in (*CXX_AND_OBJCXX_OBJS):  Add vtable-class-hierarchy.o to
        list.
        (vtable-class-hierarchy.o): Add build rule.
        * cp-tree.h (vtv_start_verification_constructor_init_function): New
        extern function decl.
        (vtv_finish_verification_constructor_init_function): New extern
        function decl.
        (build_vtbl_address): New extern function decl.
        (get_mangled_vtable_map_var_name): New extern function decl.
        (vtv_compute_class_hierarchy_transitive_closure): New extern function
        decl.
        (vtv_generate_init_routine): New extern function decl.
        (vtv_save_class_info): New extern function decl.
        (vtv_recover_class_info): New extern function decl.
        (vtv_build_vtable_verify_fndecl): New extern function decl.
        * class.c (finish_struct_1): Add call to vtv_save_class_info if
        flag_vtable_verify is true.
        * config-lang.in: Add vtable-class-hierarchy.c to gtfiles list.
        * vtable-class-hierarchy.c: New file.
        * mangle.c (get_mangled_vtable_map_var_name):  New function.
        * decl2.c (start_objects): Update function comment.
        (cp_write_global_declarations): Call vtv_recover_class_info,
        vtv_compute_class_hierarchy_transitive_closure and
        vtv_build_vtable_verify_fndecl, before calling
        finalize_compilation_unit, and call vtv_generate_init_rount after, IFF
        flag_vtable_verify is true.
        (vtv_start_verification_constructor_init_function): New function.
        (vtv_finish_verification_constructor_init_function): New function.
        * init.c (build_vtbl_address): Remove static qualifier from function.

libvtv/ChangeLog:
2013-08-06  Caroline Tice  <cmtice@google.com>

        Initial check-in of new vtable verification feature.
        * configure.ac : New file.
        * acinclude.m4 : New file.
        * Makefile.am : New file.
        * aclocal.m4 : New file.
        * configure.tgt : New file.
        * configure: New file (generated).
        * Makefile.in: New file (generated).
        * vtv_set.h : New file.
        * vtv_utils.cc : New file.
        * vtv_utils.h : New file.
        * vtv_malloc.cc : New file.
        * vtv_rts.cc : New file.
        * vtv_malloc.h : New file.
        * vtv_rts.h : New file.
        * vtv_fail.cc : New file.
        * vtv_fail.h : New file.
        * vtv_map.h : New file.
        * scripts/run-testsuite.sh : New file.
        * scripts/sum-vtv-counts.c : New file.
        * testsuite/parts-test-main.h : New file.
        * testusite/dataentry.cc : New file.
        * testsuite/temp_deriv.cc : New file.
        * testsuite/register_pair.cc : New file.
        * testsuite/virtual_inheritance.cc : New file.
        * testsuite/field-test.cc : New file.
        * testsuite/nested_vcall_test.cc : New file.
        * testsuite/template-list-iostream.cc : New file.
        * testsuite/register_pair_inserts.cc : New file.
        * testsuite/register_pair_inserts_mt.cc : New file.
        * testsuite/event.list : New file.
        * testsuite/parts-test-extra-parts-views.cc : New file.
        * testsuite/parts-test-extra-parts-views.h : New file.
        * testsuite/environment-fail-32.s : New file.
        * testsuite/parts-test-extra-parts.h : New file.
        * testsuite/temp_deriv2.cc : New file.
        * testsuite/dlopen_mt.cc : New file.
        * testsuite/event.h : New file.
        * testsuite/template-list.cc : New file.
        * testsuite/replace-fail.cc : New file.
        * testsuite/Makefile.am : New file.
        * testsuite/Makefile.in: New file (generated).
        * testsuite/mempool_negative.c : New file.
        * testsuite/parts-test-main.cc : New file.
        * testsuite/event-private.cc : New file.
        * testsuite/thunk.cc : New file.
        * testsuite/event-defintiions.cc : New file.
        * testsuite/event-private.h : New file.
        * testsuite/parts-test.list : New file.
        * testusite/register_pair_mt.cc : New file.
        * testsuite/povray-derived.cc : New file.
        * testsuite/event-main.cc : New file.
        * testsuite/environment.cc : New file.
        * testsuite/template-list2.cc : New file.
        * testsuite/thunk_vtable_map_attack.cc : New file.
        * testsuite/parts-test-extra-parts.cc : New file.
        * testsuite/environment-fail-64.s : New file.
        * testsuite/dlopen.cc : New file.
        * testsuite/so.cc : New file.
        * testsuite/temp_deriv3.cc : New file.
        * testsuite/const_vtable.cc : New file.
        * testsuite/mempool_positive.c : New file.
        * testsuite/dup_name.cc : New file.

From-SVN: r201555
2013-08-06 20:38:59 -07:00
Brooks Moses
76ba1222c5 validate_failures.py: Fix handling of summary lines with "|" characters or empty description fields.
* testsuite-management/validate_failures.py: Fix handling of
summary lines with "|" characters or empty description fields.

From-SVN: r199765
2013-06-06 14:17:36 -07:00
David Malcolm
dd1c676f75 Fix formatting of ChangeLog entries
From-SVN: r199302
2013-05-24 16:15:23 +00:00
Chung-Ju Wu
a8db59905a download_prerequisites: Download isl and cloog conditionally.
2013-05-24  Chung-Ju Wu  <jasonwucj@gmail.com>

        * download_prerequisites: Download isl and cloog conditionally.

From-SVN: r199297
2013-05-24 15:23:44 +00:00
David Malcolm
f3e4f44cb2 repro_fail: filter out "-ignore SIGHUP" from the spawn lines
contrib/
	* repro_fail: filter out "-ignore SIGHUP" from the spawn lines

From-SVN: r199147
2013-05-21 14:43:16 +00:00
Rainer Orth
0baddc4592 Obsolete Solaris 9 support
gcc:
	* config.gcc: Obsolete *-*-solaris2.9*.
	* doc/install.texi (Specific, *-*-solaris2*): Document it.

	contrib:
	* config-list.mk (LIST): Add -enable-obsolete for
	sparc-sun-solaris2.9, i686-solaris2.9.

From-SVN: r198969
2013-05-16 11:36:39 +00:00
Mike Stump
aa7e6aad59 compare_tests: Limit lines to 2000 characters as comm on Mac OS X 10.8.3 doesn't like long...
* compare_tests: Limit lines to 2000 characters as comm on Mac OS
	X 10.8.3 doesn't like long lines (those 2055 characters or more).

From-SVN: r198840
2013-05-13 17:52:42 +00:00
Sofiane Naci
a46d0aff5e config-list.mk (LIST): Add aarch64-elf and aarch64-linux-gnu.
From-SVN: r198443
2013-04-30 08:35:17 +00:00
Diego Novillo
18d5a76d36 * validate_failures.py: Fix typo.
From-SVN: r198074
2013-04-18 16:52:15 -04:00
Diego Novillo
89cbb85b5f Loosen check for build directory.
* validate_failures.py: Loosen check for build directory.
	State what failed if we couldn't find the source tree or
	the target triplet.

From-SVN: r198064
2013-04-18 14:11:05 -04:00
Jakub Jelinek
1faae6ef50 * gennews (files): Add files for GCC 4.8.
From-SVN: r196902
2013-03-22 10:47:51 +01:00
Tobias Burnus
34d3a672a8 make-obstacks-texi.pl: New.
contrib/
2013-03-06  Tobias Burnus  <burnus@net-b.de>

        * make-obstacks-texi.pl: New.

libiberty/
2013-03-06  Tobias Burnus  <burnus@net-b.de>

        * libiberty.texi: Update comment, remove lowersections.
        * obstacks.texi: Regenerate.

From-SVN: r196486
2013-03-06 09:38:22 +01:00
Rainer Orth
d809887a66 Make make_sunver.pl robust against non-C locales
* make_sunver.pl: Enforce C locale.

From-SVN: r196309
2013-02-27 09:15:35 +00:00
Richard Sandiford
b96299a135 update-copyright.py: Add libdecnumber to the default list.
contrib/
	* update-copyright.py: Add libdecnumber to the default list.
	Remove libquadmath and libssp.

From-SVN: r195822
2013-02-06 22:10:25 +00:00
Diego Novillo
144f2e52fc * testsuite-management/validate_failures.py: Fix typo.
From-SVN: r195819
2013-02-06 16:52:11 -05:00
Diego Novillo
828e50c53c Fix validate_failures.py in standalone testing.
When using validate_failures.py with --manifest and --results, we
don't need a GCC build directory.  This is useful when using the
validator outside of the build tree.  We were insisting on finding
a valid build tree regardless of those options.

Tested on x86_64.  Committed to trunk.

	* testsuite-management/validate_failures.py: Update
	Copyright years.
	Request contributions not to use Python features newer
	than 2.4.
	(GetBuildData): If this is not a build directory,
	emit an error only if --results or --manifest are missing.

From-SVN: r195817
2013-02-06 15:22:56 -05:00
Bernhard Reutner-Fischer
143c83f11b validate_failures.py: Fix performance regression
2013-02-06  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* testsuite-management/validate_failures.py
	(IsInterestingResult): Fix performance regression

From-SVN: r195811
2013-02-06 17:55:35 +01:00
Richard Sandiford
b3dc71024e Rename update-copyright.pl to update-copyright.py.
From-SVN: r195736
2013-02-04 20:47:33 +00:00
Richard Sandiford
240d63482d Add contrib/update-copyright.pl.
From-SVN: r195734
2013-02-04 19:42:46 +00:00
David Blaikie
db06526856 dg-extract-results.sh: Fix order of summary counts.
2013-01-15  David Blaikie <dblaikie@gmail.com>

	* dg-extract-results.sh: Fix order of summary counts.

From-SVN: r195224
2013-01-16 03:42:31 +00:00
David Blaikie
9fa633fc14 dg-extract-results.sh: Constrain the start-of-log pattern.
2013-01-15  David Blaikie <dblaikie@gmail.com>

	* dg-extract-results.sh: Constrain the start-of-log pattern.

From-SVN: r195216
2013-01-15 20:19:33 +00:00
David Blaikie
16dd2667ee dg-extract-results.sh: Handle KPASSes.
2013-01-15  David Blaikie <dblaikie@gmail.com>

	* dg-extract-results.sh: Handle KPASSes.

From-SVN: r195215
2013-01-15 20:18:20 +00:00
Jakub Jelinek
90d04a445c Update Copyright years for files modified in 2011 and/or 2012.
From-SVN: r194903
2013-01-04 13:49:55 +01:00
Bernhard Reutner-Fischer
7fb1e5929d validate_failures.py: also ignore .git
2012-12-01  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* testsuite-management/validate_failures.py
	(IsInterestingResult): Only strip line a second time if we did split.
	Rephrase return statement while at it.
	(CollectSumFiles): Also ignore .git directory.

From-SVN: r194182
2012-12-05 08:34:17 +01:00
Diego Novillo
f15b972787 Fix stale use of old 'options' argument.
An earlier patch had made the command line options a global variable
_OPTIONS, but it had not renamed all the uses of the old options argument.

	* testsuite-management/validate_failures.py: Fix stale
	use of 'options'.

From-SVN: r194092
2012-12-03 09:53:37 -05:00
Doug Evans
d5651dcfe8 validate_failures.py: Add support for @include, @remove directives in manifest files.
* testsuite-management/validate_failures.py: Add support for @include,
	@remove directives in manifest files.

From-SVN: r194008
2012-11-30 21:53:34 +00:00
Doug Evans
f6fce9517e validate_failures.py: Add function GetManifestPath.
* testsuite-management/validate_failures.py: Add function
	GetManifestPath.  New global _MANIFEST_SUBDIR.

From-SVN: r194007
2012-11-30 20:06:27 +00:00
Doug Evans
74df1ad0fe validate_failures.py: Remove pass/fail indicator from result of GetBuildData.
* testsuite-management/validate_failures.py: Remove pass/fail
	indicator from result of GetBuildData.

From-SVN: r193968
2012-11-29 21:40:16 +00:00
Doug Evans
bc5e01b107 validate_failures.py: Store options in global variable _OPTIONS.
* testsuite-management/validate_failures.py: Store options in global
	variable _OPTIONS.

From-SVN: r193967
2012-11-29 21:35:07 +00:00
Doug Evans
cd1d95bd62 validate_failures.py: Rename variable manifest_name to manifest_path everywhere.
* testsuite-management/validate_failures.py: Rename variable
	manifest_name to manifest_path everywhere.

From-SVN: r193965
2012-11-29 21:23:22 +00:00
Doug Evans
b4b5e1f715 validate_failures.py (CompareBuilds): Pass options.results to GetSumFiles for clean build.
* testsuite-management/validate_failures.py (CompareBuilds): Pass
	options.results to GetSumFiles for clean build.

From-SVN: r193952
2012-11-29 19:50:29 +00:00
Doug Evans
1099bb0a71 validate_failures.py: Use <target_alias> instead of <target>.
* testsuite-management/validate_failures.py: Use <target_alias> instead
	of <target>.  Minor whitespace changes.

From-SVN: r193904
2012-11-28 19:25:24 +00:00
Doug Evans
b3891de433 validate_failures.py: Record ordinal with TestResult.
* testsuite-management/validate_failures.py: Record ordinal with
	TestResult.

From-SVN: r193903
2012-11-28 19:23:31 +00:00
Mike Stump
a59a2c2116 * compare_tests: Add export LC_ALL=C to make sort happier.
From-SVN: r193631
2012-11-19 18:16:36 +00:00
H.J. Lu
451a210d0f Update libsanitizer generated files
* gcc_update: Update libsanitizer generated files.

From-SVN: r193497
2012-11-14 03:09:00 -08:00
Tobias Burnus
36a41ef191 gcc_update: Add libquadmath generated files.
2012-11-12  Tobias Burnus  <burnus@net-b.de>

        * gcc_update: Add libquadmath generated files.

From-SVN: r193448
2012-11-12 20:26:53 +01:00
H.J. Lu
6671a4e47c Add libsanitizer generated files
* gcc_update: Add libsanitizer generated files.

From-SVN: r193447
2012-11-12 10:56:36 -08:00
Lawrence Crowl
bff0e5295a Add a contrib script for comparing the performance of two sets of
compiler runs.

Usage documentation is in the script.

The script produces output of the form:

$ compare_two_ftime_report_sets "Log0/*perf" "Log3/*perf" 

Arithmetic sample for timevar log files
"Log0/*perf"
and selecting lines containing "TOTAL" with desired confidence 95 is 
trial count is 4, mean is 443.022 (95% confidence in 440.234 to 445.811),
std.deviation is 1.75264, std.error is 0.876322

Arithmetic sample for timevar log files
"Log3/*perf"
and selecting lines containing "TOTAL" with desired confidence 95 is 
trial count is 4, mean is 441.302 (95% confidence in 436.671 to 445.934),
std.deviation is 2.91098, std.error is 1.45549

The first sample appears to be 0.39% larger,
with 60% confidence of being larger.
To reach 95% confidence, you need roughly 14 trials,
assuming the standard deviation is stable, which is iffy.

Tested on x86_64 builds.


Index: contrib/ChangeLog

2012-11-05  Lawrence Crowl  <crowl@google.com>

	* compare_two_ftime_report_sets: New.

From-SVN: r193277
2012-11-07 00:36:04 +00:00
Diego Novillo
b436bf3805 Add a new option --clean_build to validate_failures.py
This is useful when you have two builds of the same compiler.  One with
your changes.  The other one, a clean build at the same revision.
Instead of using a manifest file, --clean_build will compare the
results it gather from the patched build against those it gathers from
the clean build.

Usage

$ cd /top/of/patched/gcc/bld
$ validate_failures.py --clean_build=clean/bld-gcc
Source directory: /usr/local/google/home/dnovillo/gcc/trunk
Build target:     x86_64-unknown-linux-gnu
Getting actual results from build directory .
        ./x86_64-unknown-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum
        ./x86_64-unknown-linux-gnu/libffi/testsuite/libffi.sum
        ./x86_64-unknown-linux-gnu/libgomp/testsuite/libgomp.sum
        ./x86_64-unknown-linux-gnu/libgo/libgo.sum
        ./x86_64-unknown-linux-gnu/boehm-gc/testsuite/boehm-gc.sum
        ./x86_64-unknown-linux-gnu/libatomic/testsuite/libatomic.sum
        ./x86_64-unknown-linux-gnu/libmudflap/testsuite/libmudflap.sum
        ./x86_64-unknown-linux-gnu/libitm/testsuite/libitm.sum
        ./x86_64-unknown-linux-gnu/libjava/testsuite/libjava.sum
        ./gcc/testsuite/g++/g++.sum
        ./gcc/testsuite/gnat/gnat.sum
        ./gcc/testsuite/ada/acats/acats.sum
        ./gcc/testsuite/gcc/gcc.sum
        ./gcc/testsuite/gfortran/gfortran.sum
        ./gcc/testsuite/obj-c++/obj-c++.sum
        ./gcc/testsuite/go/go.sum
        ./gcc/testsuite/objc/objc.sum
Getting actual results from build directory clean/bld-gcc
        clean/bld-gcc/x86_64-unknown-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libffi/testsuite/libffi.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libgomp/testsuite/libgomp.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libgo/libgo.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/boehm-gc/testsuite/boehm-gc.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libatomic/testsuite/libatomic.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libmudflap/testsuite/libmudflap.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libitm/testsuite/libitm.sum
        clean/bld-gcc/x86_64-unknown-linux-gnu/libjava/testsuite/libjava.sum
        clean/bld-gcc/gcc/testsuite/g++/g++.sum
        clean/bld-gcc/gcc/testsuite/gnat/gnat.sum
        clean/bld-gcc/gcc/testsuite/ada/acats/acats.sum
        clean/bld-gcc/gcc/testsuite/gcc/gcc.sum
        clean/bld-gcc/gcc/testsuite/gfortran/gfortran.sum
        clean/bld-gcc/gcc/testsuite/obj-c++/obj-c++.sum
        clean/bld-gcc/gcc/testsuite/go/go.sum
        clean/bld-gcc/gcc/testsuite/objc/objc.sum

SUCCESS: No unexpected failures.

2012-11-02  Diego Novillo  <dnovillo@google.com>

	* testsuite-management/validate_failures.py: Add option
	--clean_build to compare test results against another
	build.

From-SVN: r193105
2012-11-02 15:43:25 -04:00
Lawrence Crowl
d4ac4ce2d3 This patch renames sbitmap iterators to unify them with the bitmap iterators.
Remove the unused EXECUTE_IF_SET_IN_SBITMAP_REV, which has an unconventional
interface.

Rename the sbitmap_iter_* functions to match bitmap's bmp_iter_* functions.
Add an additional parameter to the initialization and next functions to
match the interface in bmp_iter_*.  This extra parameter is mostly hidden
by the use of the EXECUTE_IF macros.

Rename the EXECUTE_IF_SET_IN_SBITMAP macro to EXECUTE_IF_SET_IN_BITMAP.  Its
implementation is now identical to that in bitmap.h.  To prevent redefinition
errors, both definitions are now guarded by #ifndef.  An alternate strategy
is to simply include bitmap.h from sbitmap.h.  As this would increase build
time, I have elected to use the #ifndef version.  I do not have a strong
preference here.

The sbitmap_iterator type is still distinctly named because it is often
declared in contexts where the bitmap type is not obvious.  There are less
than 40 uses of this type, so the burden to modify it when changing bitmap
types is not large.

Tested on x86-64, config-list.mk testing.


Index: gcc/ChangeLog

2012-10-31  Lawrence Crowl  <crowl@google.com>

	* sbitmap.h (sbitmap_iter_init): Rename bmp_iter_set_init and add
	unused parameter to match bitmap iterator.  Update callers.
	(sbitmap_iter_cond): Rename bmp_iter_set.  Update callers.
	(sbitmap_iter_next): Rename bmp_iter_next and add unused parameter to
	match bitmap iterator.  Update callers.
	(EXECUTE_IF_SET_IN_SBITMAP_REV): Remove unused.
	(EXECUTE_IF_SET_IN_SBITMAP): Rename EXECUTE_IF_SET_IN_BITMAP and
	adjust to be identical to the definition in bitmap.h.  Conditionalize
	the definition based on not having been defined.  Update callers.
	* bitmap.h (EXECUTE_IF_SET_IN_BITMAP): Conditionalize the definition
	based on not having been defined.  (To match the above.)

From-SVN: r193069
2012-11-01 21:02:15 +00:00
Diego Novillo
3b1de8eba7 validate_failures.py: Fix parsing of summary lines.
* testsuite-management/validate_failures.py: Fix parsing
	of summary lines.

From-SVN: r193039
2012-10-31 12:37:06 -04:00
Diego Novillo
6119d95c67 * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
From-SVN: r192960
2012-10-29 15:35:35 -04:00
Diego Novillo
1996c0a6e0 x86_64-unknown-linux-gnu.xfail: Update.
2012-10-06  Diego Novillo  <dnovillo@google.com>

	* testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.

From-SVN: r192168
2012-10-06 13:44:39 -04:00
Christophe Lyon
c8ae7abfab check_GNU_style.sh: Remove temporay file upon exit.
2012-10-02   Christophe Lyon  <christophe.lyon@linaro.org>

       * check_GNU_style.sh: Remove temporay file upon exit.

From-SVN: r191954
2012-10-02 09:41:28 +02:00
Joern Rennecke
f3633f55aa contrib-list.mk (LIST): Remove arm-freebsd6, arm-linux, arm-ecos-elf, arm-rtems, arm-elf and arm-wince-pe.
* contrib-list.mk (LIST): Remove arm-freebsd6, arm-linux,
        arm-ecos-elf, arm-rtems, arm-elf and arm-wince-pe.
        Use --enable-obsolete for picochip-elf.

From-SVN: r191780
2012-09-26 23:03:44 +01:00
Diego Novillo
5ad7a43ec6 * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
From-SVN: r191166
2012-09-10 20:04:25 -04:00
Eric Botcazou
0e9f719a98 * make_sunver.pl: Add missing newline at the end of extern "C++" block.
From-SVN: r190932
2012-09-04 13:56:06 +00:00
Diego Novillo
e8f6d0461b * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
From-SVN: r190929
2012-09-04 09:23:10 -04:00
Hans-Peter Nilsson
7fc242e09f * btest-gcc.sh (TESTLOGS): Make gfortran.sum optional.
From-SVN: r190702
2012-08-26 19:30:44 +00:00
Hans-Peter Nilsson
063c573e9e * btest-gcc.sh (TESTLOGS): Add libmudflap.sum, if it exists.
From-SVN: r190682
2012-08-26 01:21:14 +00:00