public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 0/7][MSP430][TESTSUITE] Fix GCC tests for msp430-elf
@ 2018-11-14 15:41 Jozef Lawrynowicz
  2018-11-14 15:44 ` [PATCH 1/7][MSP430][TESTSUITE] Tweak dg-directives " Jozef Lawrynowicz
                   ` (10 more replies)
  0 siblings, 11 replies; 34+ messages in thread
From: Jozef Lawrynowicz @ 2018-11-14 15:41 UTC (permalink / raw)
  To: GCC Patches; +Cc: Nick Clifton

The following series of patches fixes a number of test failures when running
the GCC DejaGNU testsuite for msp430-elf.

The raw output from contrib/compare_tests is a bit misleading for some tests,
as lines have been added to the source code, changing line numbers for
dg-warning/dg-error tests. I verified there are no regressions
or new failures for x86_64-pc-linux-gnu (gcc, g++), avr (gcc) and msp430-elf
with the small and large memory model (gcc, g++).

For the msp430 small memory model (default) here are the summary results:

BEFORE:
         === gcc Summary ===
         
         # of expected passes            90663
         # of unexpected failures        447
         # of unexpected successes       6
         # of expected failures          287
         # of unresolved testcases       93
         # of unsupported tests          4171
         
         === g++ Summary ===
         
         # of expected passes            99772
         # of unexpected failures        2673
         # of expected failures          433
         # of unresolved testcases       1812
         # of unsupported tests          5862

AFTER:
         === gcc Summary ===

         # of expected passes            90750
         # of unexpected failures        150
         # of unexpected successes       3
         # of expected failures          295
         # of unresolved testcases       14
         # of unsupported tests          4313

         === g++ Summary ===

         # of expected passes            99804
         # of unexpected failures        706
         # of expected failures          436
         # of unresolved testcases       46
         # of unsupported tests          7778

For the -mlarge configuration here are the summary results:
BEFORE:
         === gcc Summary ===

         # of expected passes            90451
         # of unexpected failures        590
         # of unexpected successes       7
         # of expected failures          286
         # of unresolved testcases       162
         # of unsupported tests          4172

         === g++ Summary ===

         # of expected passes            99509
         # of unexpected failures        2885
         # of expected failures          433
         # of unresolved testcases       1875
         # of unsupported tests          5862

AFTER:
         === gcc Summary ===

         # of expected passes            90641
         # of unexpected failures        154
         # of unexpected successes       3
         # of expected failures          293
         # of unresolved testcases       32
         # of unsupported tests          4355

         === g++ Summary ===

         # of expected passes            99529
         # of unexpected failures        949
         # of expected failures          436
         # of unresolved testcases       128
         # of unsupported tests          7759


The "before" results do not include the "obvious" testsuites changes committed
in r265924, r265926, r265927, r265928,
(https://gcc.gnu.org/ml/gcc-patches/2018-11/msg00618.html)
but the "after" results do.

Patch 1 tweaks dg directives in tests specifically for msp430. Many of
these are extensions to existing target selectors in dg directives.

Patch 2 fixes issues finding libssp when linking tests or checking for
fstack_protector support.

Patch 3 sets up require-effective-target directives for tests which
require the compilation of large arrays.
Targets which have 16-bit or 20-bit size_t fail to compile tests with large
arrays designed to test 32-bit or 64-bit behaviour. Rather than enumerating
another target to skip, I've replaced the target selector in some tests with
a size checking procedure:
- size20plus (new)
- size32plus
size20plus checks to see if a 16-bit structure/array size is supported,
similarly to how the existing size32plus checks to see if a 24-bit
structure/array size is supported,

Patch 4 fixes tests when int is 16-bits by default.

Patch 5 deals with ISO C errors emitted by tests when the large memory model is
used. size_t and ptrdiff_t are __int20 with -mlarge, and if the test is
compiled with -pedantic-errors and -std=* or -ansi, then use of these types
causes an error of the form:
   ISO C does not support __int20 types
I fixed this by adding dg-prune-output directives to tests which cause this
error.
Alternatively, I considered adding typedefs preceded by  __extension__ to fix
these errors, but in many cases __SIZE_TYPE__ is directly used so replacing all
these with a new typedef'd type changes the code in more places, in some cases
changing the offset for dg-warning or dg-error directives. Changing the line
numbers for dg-warning/dg-error adds further manual steps to comparing
testresults and as these are generic tests I wanted to minimize the effect on
the testresults for other targets.

Patch 6 fixes tests expecting printf float support for targets which have been
configured with "newlib-nano-formatted-io". When newlib is configured in this
way, float printf is enabled at build time by registering _printf_float as an
undefined symbol.

Patch 7 fixes tests for msp430-elf in the large memory model.

Ok for trunk?

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2018-11-28 11:03 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-14 15:41 [PATCH 0/7][MSP430][TESTSUITE] Fix GCC tests for msp430-elf Jozef Lawrynowicz
2018-11-14 15:44 ` [PATCH 1/7][MSP430][TESTSUITE] Tweak dg-directives " Jozef Lawrynowicz
2018-11-14 16:31   ` Paul Koning
2018-11-14 22:20     ` Jozef Lawrynowicz
2018-11-15 14:48       ` Paul Koning
2018-11-15 17:49         ` Jozef Lawrynowicz
2018-11-14 16:54   ` Andreas Schwab
2018-11-14 18:00     ` Jozef Lawrynowicz
2018-11-14 18:50       ` Paul Koning
2018-11-14 19:29         ` Jozef Lawrynowicz
2018-11-15  9:37       ` Andreas Schwab
2018-11-15 12:09         ` Jozef Lawrynowicz
2018-11-14 15:47 ` [PATCH 2/7][MSP430][TESTSUITE] Add path to libssp to the linker search path when checking for -fstack-protector support Jozef Lawrynowicz
2018-11-14 15:49 ` [PATCH 3/7][MSP430][TESTSUITE] Dynamically check if size_t is large enough for tests containing large structs/arrays Jozef Lawrynowicz
2018-11-26 20:16   ` Mike Stump
2018-11-14 15:52 ` [PATCH 4/7][MSP430][TESTSUITE] Fix tests when int is 16-bit by default Jozef Lawrynowicz
2018-11-26 20:39   ` Mike Stump
2018-11-14 15:56 ` [PATCH 5/7][MSP430][TESTSUITE] Prune messages about ISO C not supporting __int20 from output of tests Jozef Lawrynowicz
2018-11-26 20:51   ` Mike Stump
2018-11-26 23:07     ` Jozef Lawrynowicz
2018-11-27 18:50       ` Mike Stump
2018-11-28 11:03         ` Jozef Lawrynowicz
2018-11-14 15:58 ` [PATCH 6/7][MSP430][TESTSUITE] Fix tests requiring float printf support when GCC was configured with --enable-newlib-nano-formatted-io Jozef Lawrynowicz
2018-11-26 20:26   ` Mike Stump
2018-11-14 15:59 ` [PATCH 7/7][MSP430][TESTSUITE] Fix tests for msp430-elf large memory model Jozef Lawrynowicz
2018-11-21 19:05 ` [PATCH 1/7][v2][MSP430][TESTSUITE] Tweak dg-directives for msp430-elf Jozef Lawrynowicz
2018-11-21 19:19   ` Rainer Orth
2018-11-21 20:42     ` Jozef Lawrynowicz
2018-11-26 23:43       ` Jeff Law
2018-11-21 22:39 ` [PATCH 3/7][v2][MSP430][TESTSUITE] Dynamically check if size_t is large enough for tests containing large structs/arrays Jozef Lawrynowicz
2018-11-26 20:20   ` Mike Stump
2018-11-26 21:28     ` Jozef Lawrynowicz
2018-11-21 22:41 ` [PATCH 6/7][v2][MSP430][TESTSUITE] Fix tests requiring float printf support when GCC was configured with --enable-newlib-nano-formatted-io Jozef Lawrynowicz
2018-11-21 22:44 ` [PATCH 7/7][v2][MSP430][TESTSUITE] Fix tests for msp430-elf large memory model Jozef Lawrynowicz

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).