Commit d2af6fcb by Joern Rennecke Committed by Joern Rennecke

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
parent ddb4e7f0
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>
* gcc.target/arm/minmax_minus.c: Scan for absence of mov.
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -8,6 +8,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
......@@ -4,6 +4,7 @@
// { dg-do compile }
// { dg-options "-std=c++0x" }
// { dg-skip-if "packed attribute missing for struct one/three/five/seven" { "epiphany-*-*" } { "*" } { "" } }
template <bool> struct sa;
template <> struct sa<true> {};
......
// PR c++/40502
// { dg-do compile }
// { dg-options "-O2" }
// { dg-skip-if "packed attribute missing for struct A" { "epiphany-*-*" } { "*" } { "" } }
struct A { char x[12], y[35]; };
struct B { char z[50]; };
......
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
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
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
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
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
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
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
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
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
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
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
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
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
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
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-objsz1-details" } */
// { dg-skip-if "packed attribute missing for drone_source_packet" { "epiphany-*-*" } { "*" } { "" } }
typedef struct {
char sentinel[4];
......
/* PR48985 */
/* { dg-do run } */
/* { dg-options "-std=gnu89" } */
/* { dg-skip-if "packed attribute missing for struct s" { "epiphany-*-*" } { "*" } { "" } } */
extern void abort (void);
......
......@@ -3,6 +3,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -std=gnu99 -ftrack-macro-expansion=0" } */
/* { dg-additional-options "-mstructure-size-boundary=8" { target arm*-*-* } } */
// { dg-skip-if "packed attribute missing for t" { "epiphany-*-*" } { "*" } { "" } }
extern void abort (void);
......
......@@ -2,6 +2,7 @@
storage for d1.a. */
/* { dg-do run } */
/* { dg-options "" } */
/* { dg-skip-if "packed attribute missing for d1" { "epiphany-*-*" } { "*" } { "" } } */
extern void abort (void);
extern void exit (int);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment