diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4abe1dc0cfafe904e82fceb7f6664187d0f0cb04..fe42af1b3bbfdfe0b54af069d9da2f29d3d7ee85 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2017-03-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> + + * gcc.c-torture/execute/pr79121.c:Use __{U}INT32_TYPE__ for targets + with sizeof(int) < 4. + * gcc.c-torture/execute/pr79737-1.c (struct S): Likewise. + * gcc.c-torture/execute/pr79737-2.c: Likewise. + * gcc.dg/torture/pr79777.c: Likewise. + * gcc.dg/torture/pr79910.c: Likewise. + 2017-03-28 Richard Biener <rguenther@suse.de> PR middle-end/80222 diff --git a/gcc/testsuite/gcc.c-torture/execute/pr79121.c b/gcc/testsuite/gcc.c-torture/execute/pr79121.c index 9fca7fbded6bfde7b89efabd50816fb521871b1d..5593acc7d297d26ed0f6ccd047a22872e12b2070 100644 --- a/gcc/testsuite/gcc.c-torture/execute/pr79121.c +++ b/gcc/testsuite/gcc.c-torture/execute/pr79121.c @@ -1,21 +1,29 @@ +#if __SIZEOF_INT__ < 4 + __extension__ typedef __UINT32_TYPE__ uint32_t; + __extension__ typedef __INT32_TYPE__ int32_t; +#else + typedef unsigned uint32_t; + typedef int int32_t; +#endif + extern void abort (void); -__attribute__ ((noinline, noclone)) unsigned long long f1 (int x) +__attribute__ ((noinline, noclone)) unsigned long long f1 (int32_t x) { return ((unsigned long long) x) << 4; } -__attribute__ ((noinline, noclone)) long long f2 (unsigned x) +__attribute__ ((noinline, noclone)) long long f2 (uint32_t x) { return ((long long) x) << 4; } -__attribute__ ((noinline, noclone)) unsigned long long f3 (unsigned x) +__attribute__ ((noinline, noclone)) unsigned long long f3 (uint32_t x) { return ((unsigned long long) x) << 4; } -__attribute__ ((noinline, noclone)) long long f4 (int x) +__attribute__ ((noinline, noclone)) long long f4 (int32_t x) { return ((long long) x) << 4; } diff --git a/gcc/testsuite/gcc.c-torture/execute/pr79737-1.c b/gcc/testsuite/gcc.c-torture/execute/pr79737-1.c index 05e392c116d892aaacddf57a64ff82b229a8b29c..f7fa5f9ea9b7a99054084ed7c38c462f734217d4 100644 --- a/gcc/testsuite/gcc.c-torture/execute/pr79737-1.c +++ b/gcc/testsuite/gcc.c-torture/execute/pr79737-1.c @@ -1,13 +1,19 @@ /* PR tree-optimization/79737 */ +#if __SIZEOF_INT__ < 4 + __extension__ typedef __INT32_TYPE__ int32_t; +#else + typedef int int32_t; +#endif + #pragma pack(1) struct S { - int b:18; - int c:1; - int d:24; - int e:15; - int f:14; + int32_t b:18; + int32_t c:1; + int32_t d:24; + int32_t e:15; + int32_t f:14; } i; int g, j, k; static struct S h; diff --git a/gcc/testsuite/gcc.c-torture/execute/pr79737-2.c b/gcc/testsuite/gcc.c-torture/execute/pr79737-2.c index 37b991e150560528e289a25a0653980db92a2924..56a6ad8f663b0a578f28c3aa2cda15874a6a62cc 100644 --- a/gcc/testsuite/gcc.c-torture/execute/pr79737-2.c +++ b/gcc/testsuite/gcc.c-torture/execute/pr79737-2.c @@ -1,13 +1,19 @@ /* PR tree-optimization/79737 */ +#if __SIZEOF_INT__ < 4 + __extension__ typedef __INT32_TYPE__ int32_t; +#else + typedef int int32_t; +#endif + #pragma pack(1) struct S { - int b:18; - int c:1; - int d:24; - int e:15; - int f:14; + int32_t b:18; + int32_t c:1; + int32_t d:24; + int32_t e:15; + int32_t f:14; } i, j; void diff --git a/gcc/testsuite/gcc.dg/torture/pr79777.c b/gcc/testsuite/gcc.dg/torture/pr79777.c index eb1bec776e234fb398dde9e33a3b4b80bf8b6077..40d6740d2a44cc06667811921def543ec973050b 100644 --- a/gcc/testsuite/gcc.dg/torture/pr79777.c +++ b/gcc/testsuite/gcc.dg/torture/pr79777.c @@ -1,9 +1,14 @@ /* { dg-do compile } */ typedef unsigned short __u16; -typedef unsigned int __u32; +#if __SIZEOF_INT__ < 4 + __extension__ typedef __UINT32_TYPE__ __u32; + __extension__ typedef __UINT32_TYPE__ u32; +#else + typedef unsigned int __u32; + typedef unsigned int u32; +#endif typedef unsigned char u8; -typedef unsigned int u32; typedef __u16 __le16; typedef __u32 __le32; typedef u32 secno; diff --git a/gcc/testsuite/gcc.dg/torture/pr79910.c b/gcc/testsuite/gcc.dg/torture/pr79910.c index 5fe80aee1446894dfe370853fe248f5f7fc8d591..280dda1a49fb08261f35569a4675265c6b6ea33f 100644 --- a/gcc/testsuite/gcc.dg/torture/pr79910.c +++ b/gcc/testsuite/gcc.dg/torture/pr79910.c @@ -2,7 +2,11 @@ /* { dg-additional-options "-fweb" } */ typedef unsigned char u8; -typedef unsigned int u32; +#if __SIZEOF_INT__ < 4 + __extension__ typedef __UINT32_TYPE__ u32; +#else + typedef unsigned int u32; +#endif typedef unsigned long long u64; int a;