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]

Testsuite adaptions for the avr target / nested function support


Hi,

find enclosed the first of a to-be-series of adaptions of the testsuite to 
accomodate for particularities of the avr target. Presently there are about 
500 reported bugs, most of which are actually not real bugs.
 
Since this is the first patch I am posting here, I decided to start with a 
really tiny one first. Mainly, in order to make sure that the formal 
requirements (change log entries, etc., coding style of dg magic comments, 
etc.) of the remaining adaptions will be compliant with gcc coding 
guidelines).

I presently observe that the vast majority of the huge number of failures 
stems from the lacking support of nested functions. Avr has separate program 
memory and data memory spaces and does, thus, not support trampolines. This 
will be the most important task in order to actually avoid that the real bugs 
remain hidden behind a huge number of false alarms. 
Therefore my question: Is there any switch that allows for disabling all test 
cases that make use of nested functions? If not: Is this what the 
NO_TRAMPLINES define symbols are supposed to be used for or should one define 
a "dg-require-support" tag for this purpose? Possibly one distinguish between 
ordinary nested functions that are used only locally and nested functions 
whose address is passed to other functions (i.e. real trampoline code)?

Yours,

Björn
DATE	Bjoern Haase <bjoern.m.haase@web.de>

	20010327-1.c: Test assumes pointers to be unsigned long.
	Test now skipped for avr-*-* by dg magic comment.
	
	20020604-1.c and 980506-1.c: Large data structures.
	avr-*-* added to the existing xfail list.

Index: 20010327-1.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/gcc.c-torture/compile/20010327-1.c,v
retrieving revision 1.5
diff -c -r1.5 20010327-1.c
*** 20010327-1.c	3 Mar 2003 19:02:28 -0000	1.5
--- 20010327-1.c	22 Feb 2005 21:39:08 -0000
***************
*** 5,9 ****
--- 5,12 ----
  
     Some rare environments might not have the required relocs to support
     this; they should have this test disabled in the .x file.  */
+ 
+ /* { dg-do compile { xfail avr-*-* } } */
+ 
  extern void _text;
  static unsigned long x = (unsigned long) &_text - 0x10000000L - 1;
Index: 20020604-1.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/gcc.c-torture/compile/20020604-1.c,v
retrieving revision 1.4
diff -c -r1.4 20020604-1.c
*** 20020604-1.c	23 Dec 2003 20:36:59 -0000	1.4
--- 20020604-1.c	22 Feb 2005 21:39:08 -0000
***************
*** 1,6 ****
  /* The array is too big. */
  /* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
! /* { dg-do assemble { xfail m6811-*-* m6812-*-* } } */
  
  /* PR c/6957
     This testcase ICEd at -O2 on IA-32, because
--- 1,6 ----
  /* The array is too big. */
  /* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
! /* { dg-do assemble { xfail m6811-*-* m6812-*-* avr-*-* } } */
  
  /* PR c/6957
     This testcase ICEd at -O2 on IA-32, because
Index: 980506-1.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/gcc.c-torture/compile/980506-1.c,v
retrieving revision 1.5
diff -c -r1.5 980506-1.c
*** 980506-1.c	23 Dec 2003 20:36:59 -0000	1.5
--- 980506-1.c	22 Feb 2005 21:39:09 -0000
***************
*** 1,6 ****
  /* The arrays are too large for the xstormy16 - won't fit in 16 bits. */
  /* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
! /* { dg-do assemble { xfail xstormy16-*-* m6811-*-* m6812-*-* } } */
  
  unsigned char	TIFFFax2DMode[20][256];
  unsigned char	TIFFFax2DNextState[20][256];
--- 1,6 ----
  /* The arrays are too large for the xstormy16 - won't fit in 16 bits. */
  /* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */
! /* { dg-do assemble { xfail xstormy16-*-* m6811-*-* m6812-*-* avr-*-* } } */
  
  unsigned char	TIFFFax2DMode[20][256];
  unsigned char	TIFFFax2DNextState[20][256];

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