Commit 5c1aec7e by Georg-Johann Lay Committed by Georg-Johann Lay

re PR testsuite/52641 (Test cases fail for 16-bit int targets)

	PR testsuite/52641
	* gcc.c-torture/execute/pr81913.c: Use types that also work for int16.
	* gcc.c-torture/execute/20180112-1.c: Dito.
	* gcc.c-torture/execute/pr81503.c: Dito.
	* gcc.dg/store_merging_12.c: Dito.
	* gcc.dg/tree-ssa/loop-niter-1.c: Dito.
	* gcc.dg/tree-ssa/loop-niter-2.c: Dito.
	* gcc.dg/tree-ssa/pr80898.c: Dito.
	* gcc.dg/tree-ssa/pr82363.c: Dito.
	* gcc.dg/utf16-4.c: Also allow "short unsigned int" in dg-warning.
	* gcc.dg/tree-ssa/pr81346-5.c: Special-case int16.
	* gcc.dg/tree-ssa/ssa-sink-11.c: Dito.
	* gcc.dg/tree-ssa/ssa-sink-12.c: Dito.
	* gcc.dg/torture/pr81814.c: Restrict to int32plus.
	* gcc.dg/tree-ssa/pr80803.c: Dito.
	* gcc.dg/tree-ssa/pr80898-2.c: Dito.
	* gcc.dg/tree-ssa/pr81346-4.c: Dito.
	* gcc.dg/tree-ssa/vrp114.c: Dito.
	* gcc.dg/tree-ssa/pr82574.c: Restrict to size32plus.
	* gcc.dg/tree-ssa/ssa-dom-thread-13.c: Dito.
	* gcc.dg/tree-ssa/ssa-sink-15.c: Dito.

From-SVN: r257327
parent e8a5a6f6
2018-02-02 Georg-Johann Lay <avr@gjlay.de>
PR testsuite/52641
* gcc.c-torture/execute/pr81913.c: Use types that also work for int16.
* gcc.c-torture/execute/20180112-1.c: Dito.
* gcc.c-torture/execute/pr81503.c: Dito.
* gcc.dg/store_merging_12.c: Dito.
* gcc.dg/tree-ssa/loop-niter-1.c: Dito.
* gcc.dg/tree-ssa/loop-niter-2.c: Dito.
* gcc.dg/tree-ssa/pr80898.c: Dito.
* gcc.dg/tree-ssa/pr82363.c: Dito.
* gcc.dg/utf16-4.c: Also allow "short unsigned int" in dg-warning.
* gcc.dg/tree-ssa/pr81346-5.c: Special-case int16.
* gcc.dg/tree-ssa/ssa-sink-11.c: Dito.
* gcc.dg/tree-ssa/ssa-sink-12.c: Dito.
* gcc.dg/torture/pr81814.c: Restrict to int32plus.
* gcc.dg/tree-ssa/pr80803.c: Dito.
* gcc.dg/tree-ssa/pr80898-2.c: Dito.
* gcc.dg/tree-ssa/pr81346-4.c: Dito.
* gcc.dg/tree-ssa/vrp114.c: Dito.
* gcc.dg/tree-ssa/pr82574.c: Restrict to size32plus.
* gcc.dg/tree-ssa/ssa-dom-thread-13.c: Dito.
* gcc.dg/tree-ssa/ssa-sink-15.c: Dito.
2018-02-02 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
PR target/84066
......
......@@ -3,7 +3,7 @@
extern void abort (void);
typedef unsigned int u32;
typedef __UINT32_TYPE__ u32;
u32 bug (u32 * result) __attribute__((noinline));
u32 bug (u32 * result)
......
unsigned short a = 41461;
unsigned short b = 3419;
#if __SIZEOF_INT__ >= 4
int c = 0;
void foo() {
if (a + b * ~(0 != 5))
c = -~(b * ~(0 != 5)) + 2147483647;
}
#else
__INT32_TYPE__ c = 0;
void foo() {
if (a + b * ~((__INT32_TYPE__)(0 != 5)))
c = -~(b * ~((__INT32_TYPE__)(0 != 5))) + 2147483647;
}
#endif
int main() {
foo();
......
/* PR tree-optimization/81913 */
typedef unsigned char u8;
typedef unsigned int u32;
typedef __UINT8_TYPE__ u8;
typedef __UINT32_TYPE__ u32;
static u32
b (u8 d, u32 e, u32 g)
......
/* { dg-do compile } */
/* { dg-options "-O2 -Wall" } */
#if __SIZEOF_INT__ == 2
#define int long
#endif
struct S { unsigned int b1:1, b2:1, b3:1, b4:1, b5:1, b6:27; };
void bar (struct S *);
void foo (int x)
......
/* PR middle-end/81814 */
/* { dg-do run } */
/* { dg-do run { target int32plus } } */
int
main ()
......
......@@ -2,7 +2,7 @@
/* { dg-options "-O2 -fdump-tree-sccp-details" } */
typedef unsigned char u8;
typedef unsigned int u32;
typedef __UINT32_TYPE__ u32;
static u32
b (u8 d, u32 e, u32 g)
......
......@@ -2,7 +2,7 @@
/* { dg-options "-O2 -fdump-tree-sccp-details" } */
typedef unsigned char u8;
typedef unsigned int u32;
typedef __UINT32_TYPE__ u32;
static u32
b (u8 d, u32 e, u32 g)
......
/* { dg-do run } */
/* { dg-do run { target int32plus } } */
/* { dg-options "-O" } */
struct S0
......
/* { dg-do run } */
/* { dg-do run { target int32plus } } */
/* { dg-options "-O2" } */
struct S0
......
......@@ -2,9 +2,9 @@
/* { dg-options "-O2" } */
struct S0 {
int f0 : 24;
int f1;
int f74;
__INT32_TYPE__ f0 : 24;
__INT32_TYPE__ f1;
__INT32_TYPE__ f74;
} a, *c = &a;
struct S0 fn1() {
struct S0 b = {4, 3};
......
/* PR tree-optimization/81346 */
/* { dg-do run } */
/* { dg-do run { target int32plus } } */
/* { dg-options "-O2" } */
#include "pr81346-3.c"
......
/* PR tree-optimization/81346 */
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-optimized" } */
/* { dg-final { scan-tree-dump-times "\\(signed int\\) x" 10 "optimized" } } */
/* { dg-final { scan-tree-dump-times "\\(signed int\\) x" 10 "optimized" { target int32plus } } } */
/* { dg-final { scan-tree-dump-times "\\(signed short\\) x" 10 "optimized" { target int16 } } } */
/* { dg-final { scan-tree-dump-times " <= 0;" 5 "optimized" } } */
/* { dg-final { scan-tree-dump-times " > 0;" 5 "optimized" } } */
......
/* { dg-do run } */
/* { dg-options "-O" } */
#if __SIZEOF_INT__ == 2
#define int __INT32_TYPE__
#endif
struct A
{
int b;
......@@ -34,6 +38,8 @@ test_l (void)
__builtin_abort ();
}
#undef int
int main ()
{
while (1)
......
/* { dg-do run } */
/* { dg-do run { target size32plus } } */
/* { dg-options "-O3" } */
unsigned char a, b, c, d[200][200];
......
/* { dg-do compile } */
/* { dg-do compile { target size32plus } } */
/* { dg-options "-O2 -fdump-tree-dom2-details -w" } */
union tree_node;
......
......@@ -13,4 +13,5 @@ int foo (int v[], int a)
return r;
}
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 252B\\\]" "optimized"} } */
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 252B\\\]" "optimized" { target int32plus } } } */
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 126B\\\]" "optimized" { target int16 } } } */
......@@ -14,4 +14,5 @@ int foo (int v1[], int v2[])
return r;
}
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 252B\\\]" "optimized"} } */
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 252B\\\]" "optimized" { target int32plus } } } */
/* { dg-final { scan-tree-dump "MEM\\\[.* \\+ 126B\\\]" "optimized" { target int16 } } } */
/* PR79725 */
/* { dg-do compile } */
/* { dg-do compile { target size32plus } } */
/* { dg-options "-O2 -fdump-tree-optimized" } */
_Complex double f(_Complex double x[])
......
/* { dg-do link } */
/* { dg-do link { target int32plus } } */
/* { dg-options "-O2 -fdump-tree-fre1 -fdump-tree-evrp" } */
extern void link_error ();
......
......@@ -12,7 +12,7 @@ char16_t c2 = u'\U00064321'; /* { dg-warning "constant too long" } */
char16_t c3 = 'a';
char16_t c4 = U'a';
char16_t c5 = U'\u2029';
char16_t c6 = U'\U00064321'; /* { dg-warning "conversion from .(long )?unsigned int. to 'char16_t' {aka 'short unsigned int'} changes value from .410401. to .17185." } */
char16_t c6 = U'\U00064321'; /* { dg-warning "conversion from .(long )?unsigned int. to 'char16_t' {aka '(short )?unsigned int'} changes value from .410401. to .17185." } */
char16_t c7 = L'a';
char16_t c8 = L'\u2029';
char16_t c9 = L'\U00064321'; /* { dg-warning "conversion" "" { target { 4byte_wchar_t } } } */
......
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