diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-05 22:25:29 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-05 22:25:29 +0000 |
commit | 7deddfded2d013c07a639873a4c90bfed40fd03e (patch) | |
tree | 3df2a52207fec5bec55c28303aa57a8bd9b4e620 /gcc/testsuite/gcc.c-torture/compile | |
parent | c79b54af83c8031caac515081fb7c56a127b90e3 (diff) | |
download | gcc-7deddfded2d013c07a639873a4c90bfed40fd03e.tar.gz |
2010-11-05 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 166377
2010-11-05 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 166377
* gcc/Makefile.in (MELT_RAW_CFLAGS): removed LIBELFINC
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@166380 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/20001226-1.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/20010327-1.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/20020604-1.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/20080625-1.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr41181.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr43191.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr46034.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr46107.c | 16 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr46248.c | 32 |
10 files changed, 69 insertions, 4 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/20001226-1.c b/gcc/testsuite/gcc.c-torture/compile/20001226-1.c index 7cf963f0ac7..8c93baccda9 100644 --- a/gcc/testsuite/gcc.c-torture/compile/20001226-1.c +++ b/gcc/testsuite/gcc.c-torture/compile/20001226-1.c @@ -3,6 +3,7 @@ /* { dg-do assemble } */ /* { dg-xfail-if "function larger than 64K" { m6811-*-* } { "*" } { "" } } */ /* { dg-skip-if "too much code for avr" { "avr-*-*" } { "*" } { "" } } */ +/* { dg-skip-if "too much code for pdp11" { "pdp11-*-*" } { "*" } { "" } } */ /* { dg-xfail-if "jump beyond 128K not supported" { xtensa*-*-* } { "-O0" } { "" } } */ /* { dg-xfail-if "PR36698" { spu-*-* } { "-O0" } { "" } } */ /* { dg-skip-if "" { m32c-*-* } { "*" } { "" } } */ diff --git a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c index f20e3a3e2dc..ce68f78df1d 100644 --- a/gcc/testsuite/gcc.c-torture/compile/20010327-1.c +++ b/gcc/testsuite/gcc.c-torture/compile/20010327-1.c @@ -1,5 +1,6 @@ /* { dg-skip-if "non-SI pointers" { m32c-*-* } { "*" } { "" } } */ /* { dg-skip-if "HI mode pointer for avr" { "avr-*-*" } { "*" } { "" } } */ +/* { dg-skip-if "HI mode pointer for pdp11" { "pdp11-*-*" } { "*" } { "" } } */ /* { dg-skip-if "non-SI pointers for w64" { "x86_64-*-mingw*" } { "*" } { "" } } */ /* This testcase tests whether GCC can produce static initialized data diff --git a/gcc/testsuite/gcc.c-torture/compile/20020604-1.c b/gcc/testsuite/gcc.c-torture/compile/20020604-1.c index 17b9b2165ba..8b958040e3c 100644 --- a/gcc/testsuite/gcc.c-torture/compile/20020604-1.c +++ b/gcc/testsuite/gcc.c-torture/compile/20020604-1.c @@ -1,6 +1,6 @@ /* { dg-do assemble } */ /* { dg-xfail-if "The array is too big" { "m6811-*-* m6812-*-*" } { "*" } { "" } } */ -/* { dg-skip-if "The array is too big" { "avr-*-*" } { "*" } { "" } } */ +/* { dg-skip-if "The array is too big" { "avr-*-*" "pdp11-*-*" } { "*" } { "" } } */ /* { dg-xfail-if "The array too big" { "h8300-*-*" } { "-mno-h" "-mn" } { "" } } */ /* { dg-skip-if "" { m32c-*-* } { } { } } */ diff --git a/gcc/testsuite/gcc.c-torture/compile/20080625-1.c b/gcc/testsuite/gcc.c-torture/compile/20080625-1.c index e656cd4f58e..16def2c8a37 100644 --- a/gcc/testsuite/gcc.c-torture/compile/20080625-1.c +++ b/gcc/testsuite/gcc.c-torture/compile/20080625-1.c @@ -1,4 +1,4 @@ -/* { dg-skip-if "too much data" { "avr-*-*" "m32c-*-*" } { "*" } { "" } } */ +/* { dg-skip-if "too much data" { "avr-*-*" "m32c-*-*" "pdp11-*-*" } { "*" } { "" } } */ struct peakbufStruct { unsigned int lnum [5000]; int lscan [5000][4000]; diff --git a/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c b/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c index 75b824d1987..41fa2f14022 100644 --- a/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c +++ b/gcc/testsuite/gcc.c-torture/compile/limits-stringlit.c @@ -1,4 +1,4 @@ -/* { dg-skip-if "Array too big" { avr-*-* picochip-*-* m32c-*-* } { "*" } { "" } } */ +/* { dg-skip-if "Array too big" { avr-*-* picochip-*-* m32c-*-* pdp11-*-* } { "*" } { "" } } */ #define STR2 "012345678901234567890123456789012345678901234567890123456789\ 0123456789012345678901234567890123456789" diff --git a/gcc/testsuite/gcc.c-torture/compile/pr41181.c b/gcc/testsuite/gcc.c-torture/compile/pr41181.c index 9e42f420939..5fafb020ea5 100644 --- a/gcc/testsuite/gcc.c-torture/compile/pr41181.c +++ b/gcc/testsuite/gcc.c-torture/compile/pr41181.c @@ -1,4 +1,4 @@ -/* { dg-skip-if "The array is too big" { "avr-*-*" } { "*" } { "" } } */ +/* { dg-skip-if "The array is too big" { "avr-*-*" "pdp11-*-*" } { "*" } { "" } } */ char paths[1024]; static void x264_slicetype_path(char (*best_paths)[250], int n, int length) { diff --git a/gcc/testsuite/gcc.c-torture/compile/pr43191.c b/gcc/testsuite/gcc.c-torture/compile/pr43191.c index 9c8d1444cf9..f4ec0b4770d 100644 --- a/gcc/testsuite/gcc.c-torture/compile/pr43191.c +++ b/gcc/testsuite/gcc.c-torture/compile/pr43191.c @@ -1,3 +1,4 @@ +/* { dg-skip-if "Ints are 16 bits" { "pdp11-*-*" } { "*" } { "" } } */ struct S0 { }; diff --git a/gcc/testsuite/gcc.c-torture/compile/pr46034.c b/gcc/testsuite/gcc.c-torture/compile/pr46034.c new file mode 100644 index 00000000000..02eda0572e4 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr46034.c @@ -0,0 +1,14 @@ +/* PR rtl-optimization/46034 */ + +void bar (int); + +void +foo (int x, int y) +{ + int i; + for (i = 0; i < x; i++) + { + y = __builtin_abs (y); + bar (y / 2); + } +} diff --git a/gcc/testsuite/gcc.c-torture/compile/pr46107.c b/gcc/testsuite/gcc.c-torture/compile/pr46107.c new file mode 100644 index 00000000000..41582b8a161 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr46107.c @@ -0,0 +1,16 @@ +/* PR tree-optimization/46107 */ + +int foo (void) __attribute__ ((noreturn)); + +void +bar (int x, int *y, int z) +{ + static void *j[] = { &&l1, &&l2 }; +l1: + if (*y) + goto *j[z]; + foo (); +l2: + *y ^= (x & 1) ? -1 : 0; + goto *j[x]; +} diff --git a/gcc/testsuite/gcc.c-torture/compile/pr46248.c b/gcc/testsuite/gcc.c-torture/compile/pr46248.c new file mode 100644 index 00000000000..6d3be2a6545 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr46248.c @@ -0,0 +1,32 @@ +/* PR rtl-optimization/46248 */ + +struct S +{ + int s; +}; + +void +foo (unsigned char *x, int y, struct S *z) +{ + const int l1 = y; + const int l2 = y + l1; + const int l3 = y + l2; + const int l4 = y + l3; + const int l5 = y + l4; + const int l6 = y + l5; + const int l7 = y + l6; + int i; + for (i = 0; i < 8; i++) + { + int a = x[l3] - x[l4]; + int b = x[l4] - x[l5]; + int c = x[l5] - x[l6]; + int d = (b >= 0 ? b : -b) - (((a >= 0 ? a : -a) + (c >= 0 ? c : -c)) >> 1); + if (d < z->s * 2) + { + int v = d * (-b > 0 ? 1 : -1); + x[l2] += v >> 3; + x[l7] -= v >> 3; + } + } +} |