Commit Graph

481 Commits

Author SHA1 Message Date
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
Diego Novillo
18da4303c1 Add an xfail manifest for x86_64-unknown-linux-gnu to trunk.
This patch adds an xfail manifest for trunk for x86_64 builds. I find
this useful to determine whether my patch has introduced new failures.
The failures in these manifest are always present in trunk and
deciding what to ignore is not very straightforward.

I will keep maintaining this manifest out of clean builds. They are
not hard to maintain. Manifest files can be generated by going to the
top of the build directory and typing:

$ cd <top-of-bld-dir>
$ <path-to-src>/contrib/testsuite-management --produce_manifest

This will generate a .xfail file with the triple name of the target
you just built.  Once this file exist you can run the validator again
on the build directory with no arguments.  It should produce the
output:

$ cd <top-of-bld-dir>
$ <path-to-src>/contrib/testsuite-management/validate_failures.py
Source directory: <path-to-src>
Build target:     x86_64-unknown-linux-gnu
Manifest:         <path-to-src>/contrib/testsuite-management/x86_64-unknown-linux-gnu.xfail
Getting actual results from build
        ./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


SUCCESS: No unexpected failures.


If the output shows new failures, you investigate them. If they are
not yours, you can add them to the xfail manifest (after reporting
them) and then commit the modified .xfail file.

Long term, I would like to have this script pull manifest files from
postings made to gcc-testresults. This way, we won't have to maintain
these .xfail files manually. In branches this is not a big problem,
but in trunk it may be a tad annoying.

From-SVN: r190404
2012-08-14 22:25:19 -04:00
Diego Novillo
a327112f68 validate_failures.py (ExpirationDate): Tidy comment.
* testsuite-management/validate_failures.py (ExpirationDate): Tidy
	comment.

From-SVN: r190354
2012-08-13 15:36:03 -04:00
Diego Novillo
6baa72251b validate_failures.py (ParseSummary): Fix comment.
* testsuite-management/validate_failures.py (ParseSummary): Fix
	comment.

From-SVN: r190352
2012-08-13 14:18:52 -04:00
Diego Novillo
c577382e7b Implement support for expiring expected results in validate_failures.py.
I noticed recently that while the validator was accepting the
'expire=YYYYMMDD' attribute, it was not actually doing anything with
it.

This patch fixes the oversight.

2012-08-13  Diego Novillo  <dnovillo@google.com>

	* testsuite-management/validate_failures.py: Import datetime.
	(TestResult.ExpirationDate): New.
	(TestResult.HasExpired): New.
	(ParseSummary): Call it.  If it returns True, warn that the
	expected failure has expired and do not add it to the set of
	expected results.
	(GetResults): Clarify documentation.

From-SVN: r190351
2012-08-13 14:00:55 -04:00
Diego Novillo
55b073bae6 Do not use 'with ... as ...' in validate_failures.py
Some of the hosts were we run this script are still using Python 2.4.
This patch replaces the use of 'with ... as ...' to avoid syntax errors.

2012-07-26   Diego Novillo  <dnovillo@google.com>

	* testsuite-management/validate_failures.py: Do not use
	'with ... as ...' constructs.

From-SVN: r189893
2012-07-26 11:31:00 -04:00
Diego Novillo
29476fe162 Fix --produce_manifest flag in validate_failures.py.
When I added the functionality to use other summary files for
reporting, I broke the generation of manifests. When sum files are
passed on, we need to use the list. Otherwise, we need to find summary
files in the build directory.

This patch factors out that logic into a new function and calls it
from both the reporting and generation routines.

Committed to trunk.

	* testsuite-management/validate_failures.py (CollectSumFiles):
	Rename from GetSumFiles.
	(GetSumFiles): Factor out of CheckExpectedResults.
	(CheckExpectedResults): Call it.
	(ProduceManifest): Call it.

From-SVN: r189662
2012-07-19 10:35:18 -04:00
Diego Novillo
89d223b3ac validate_failures.py: Fix /usr/bin/python invocation.
* testsuite-management/validate_failures.py: Fix
	/usr/bin/python invocation.

From-SVN: r189631
2012-07-18 15:55:46 -04:00
Steven Bosscher
c85fd25b17 check_makefile_deps.sh: Look for c-common.o in c-family/.
* check_makefile_deps.sh: Look for c-common.o in c-family/.
	Add a few more crt* files to the list of files to skip.

From-SVN: r188792
2012-06-19 20:01:23 +00:00
Marek Polacek
9adf6490fc The new mklog script prints three spaces after the date part, which is wrong.
The new mklog script prints three spaces after the date part, which
is wrong.  Thus fixed by adjusting the split pattern.  Tested manually.

2012-05-31  Marek Polacek  <polacek@redhat.com>

       * mklog: Prevent printing three spaces after the date.

From-SVN: r188265
2012-06-06 08:50:55 -04:00
Diego Novillo
4da37205ac Add ChangeLog entry for previous commit.
From-SVN: r188218
2012-06-04 20:36:08 -04:00
Diego Novillo
831315d08c Extend validate_failures.py to run outside the build directory.
This patch adds three new arguments to validate_failures.py so
it can be used outside the build directory:

--ignore_missing_failures
    When a failure is expected in the manifest but it is not found in
    the actual results, the script produces a note alerting to this
    fact. This means that the expected failure has been fixed, or it
    did not run, or it may simply be flaky.

    With this option, one can ask the script not to show the missing
    failures.

--manifest
    Name of the manifest file to use.  By default, the script will
    look for the manifest file in the source directory associated with
    this build.  With this option, one can point to any arbitrary
    manifest file.  I renamed the old --manifest flag to
    --produce_manifest.

--results
    Space-separated list of .sum files with the testing results to
    check. The only content needed from these files are the lines
    starting with FAIL, XPASS or UNRESOLVED.

From-SVN: r188217
2012-06-04 20:28:56 -04:00
Diego Novillo
ba0d684ecd Add new skeleton ChangeLog file generator to contrib/
This script analyzes a .diff file and generates a skeleton ChangeLog
entry for it.  It tries fairly hard to find function names, so it's
important to use the -p switch with diff.

I wrote the initial code a while ago.  Cary added a bunch of smarts to
make it understand C++ and guess the function names better than the
original version.

2012-05-31   Diego Novillo  <dnovillo@google.com>
	     Cary Coutant  <ccoutant@google.com>

	* mklog: New.

Co-Authored-By: Cary Coutant <ccoutant@google.com>

From-SVN: r188072
2012-05-31 14:01:15 -04:00