Skip tests that make assumptions about struct layout that don't hold on epiphany.

Skip tests that make assumptions about struct layout that don't hold
        on epiphany.  These tests could be fixed by adding padded attributes,
        See:
        http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00006.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01513.html
        http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01504.html

        * g++.dg/cpp0x/cast.C: Skip for epiphany-*-*.
        * g++.dg/cpp0x/iop.C: Likewise.
        * g++.dg/cpp0x/named_refs.C: Likewise.
        * g++.dg/cpp0x/rv1p.C: Likewise.
        * g++.dg/cpp0x/rv2p.C: Likewise.
        * g++.dg/cpp0x/rv3p.C: Likewise.
        * g++.dg/cpp0x/rv4p.C: Likewise.
        * g++.dg/cpp0x/rv5p.C: Likewise.
        * g++.dg/cpp0x/rv6p.C: Likewise.
        * g++.dg/cpp0x/rv7p.C: Likewise.
        * g++.dg/cpp0x/rv8p.C: Likewise.
        * g++.dg/ext/strncpy-chk1.C: Likewise.
        * gcc.dg/builtin-object-size-10.c: Likewise.
        * gcc.dg/builtin-object-size-11.c: Likewise.
        * gcc.dg/builtin-stringop-chk-1.c: Likewise.
        * gcc.dg/pr25805.c: Likewise.
        * gcc.c-torture/execute/builtins/memcpy-chk.x: New file.
        * gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
        * gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
        * gcc.c-torture/execute/zerolen-2.x: Likewise.

From-SVN: r201268
This commit is contained in:
Joern Rennecke 2013-07-26 15:22:43 +00:00 committed by Joern Rennecke
parent ddb4e7f057
commit d2af6fcb57
31 changed files with 149 additions and 0 deletions

View File

@ -1,3 +1,38 @@
2013-07-26 Joern Rennecke <joern.rennecke@embecosm.com>
Skip tests that make assumptions about struct layout that don't hold
on epiphany:
* g++.dg/cpp0x/cast.C: Skip for epiphany-*-*.
* g++.dg/cpp0x/iop.C: Likewise.
* g++.dg/cpp0x/named_refs.C: Likewise.
* g++.dg/cpp0x/rv1p.C: Likewise.
* g++.dg/cpp0x/rv2p.C: Likewise.
* g++.dg/cpp0x/rv3p.C: Likewise.
* g++.dg/cpp0x/rv4p.C: Likewise.
* g++.dg/cpp0x/rv5p.C: Likewise.
* g++.dg/cpp0x/rv6p.C: Likewise.
* g++.dg/cpp0x/rv7p.C: Likewise.
* g++.dg/cpp0x/rv8p.C: Likewise.
* g++.dg/ext/strncpy-chk1.C: Likewise.
* gcc.dg/builtin-object-size-10.c: Likewise.
* gcc.dg/builtin-object-size-11.c: Likewise.
* gcc.dg/builtin-stringop-chk-1.c: Likewise.
* gcc.dg/pr25805.c: Likewise.
* gcc.c-torture/execute/builtins/memcpy-chk.x: New file.
* gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
* gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
* gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
* gcc.c-torture/execute/zerolen-2.x: Likewise.
2013-07-26 Kyrylo Tkachov <kyrylo.tkachov@arm.com> 2013-07-26 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/minmax_minus.c: Scan for absence of mov. * gcc.target/arm/minmax_minus.c: Scan for absence of mov.

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -8,6 +8,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -4,6 +4,7 @@
// { dg-do compile } // { dg-do compile }
// { dg-options "-std=c++0x" } // { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa; template <bool> struct sa;
template <> struct sa<true> {}; template <> struct sa<true> {};

View File

@ -1,6 +1,7 @@
// PR c++/40502 // PR c++/40502
// { dg-do compile } // { dg-do compile }
// { dg-options "-O2" } // { dg-options "-O2" }
// { dg-skip-if "packed attribute missing for struct A" { "epiphany-*-*" } { "*" } { "" } }
struct A { char x[12], y[35]; }; struct A { char x[12], y[35]; };
struct B { char z[50]; }; struct B { char z[50]; };

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test4 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test5 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test4 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test4 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test4 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test4 struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3_sub struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of struct padding.
# to make this true for test3_sub struct A on epiphany would require
# __attribute__((packed)) .
return 1
}
return 0

View File

@ -0,0 +1,7 @@
if [istarget "epiphany-*-*"] {
# This test assumes the absence of larger-than-word padding.
# to make this true for struct foo on epiphany would require
# __attribute__((packed,aligned(__alignof__(word)))) .
return 1
}
return 0

View File

@ -1,5 +1,6 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-objsz1-details" } */ /* { dg-options "-O2 -fdump-tree-objsz1-details" } */
// { dg-skip-if "packed attribute missing for drone_source_packet" { "epiphany-*-*" } { "*" } { "" } }
typedef struct { typedef struct {
char sentinel[4]; char sentinel[4];

View File

@ -1,6 +1,7 @@
/* PR48985 */ /* PR48985 */
/* { dg-do run } */ /* { dg-do run } */
/* { dg-options "-std=gnu89" } */ /* { dg-options "-std=gnu89" } */
/* { dg-skip-if "packed attribute missing for struct s" { "epiphany-*-*" } { "*" } { "" } } */
extern void abort (void); extern void abort (void);

View File

@ -3,6 +3,7 @@
/* { dg-do compile } */ /* { dg-do compile } */
/* { dg-options "-O2 -std=gnu99 -ftrack-macro-expansion=0" } */ /* { dg-options "-O2 -std=gnu99 -ftrack-macro-expansion=0" } */
/* { dg-additional-options "-mstructure-size-boundary=8" { target arm*-*-* } } */ /* { dg-additional-options "-mstructure-size-boundary=8" { target arm*-*-* } } */
// { dg-skip-if "packed attribute missing for t" { "epiphany-*-*" } { "*" } { "" } }
extern void abort (void); extern void abort (void);

View File

@ -2,6 +2,7 @@
storage for d1.a. */ storage for d1.a. */
/* { dg-do run } */ /* { dg-do run } */
/* { dg-options "" } */ /* { dg-options "" } */
/* { dg-skip-if "packed attribute missing for d1" { "epiphany-*-*" } { "*" } { "" } } */
extern void abort (void); extern void abort (void);
extern void exit (int); extern void exit (int);