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
+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
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 ()
/* { 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-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
/* { 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;
__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;
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 } } } */
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 ();
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 } } } */