From 1bc5aee63eb72b341f506ad058502cd0361f0d10 Mon Sep 17 00:00:00 2001 From: Ben Cheng Date: Tue, 25 Mar 2014 22:37:19 -0700 Subject: Initial checkin of GCC 4.9.0 from trunk (r208799). Change-Id: I48a3c08bb98542aa215912a75f03c0890e497dba --- gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c | 152 ++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c (limited to 'gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c') diff --git a/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c b/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c new file mode 100644 index 000000000..2ab328f1d --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.dg/tree-ssa/vrp64.c @@ -0,0 +1,152 @@ +/* PR tree-optimization/51721 */ +/* { dg-do link } */ +/* { dg-options "-O2" } */ + +extern void link_error (void); + +#define BITSM1 (sizeof (int) * __CHAR_BIT__ - 1) + +void +f1 (unsigned int s) +{ + if (s >> BITSM1 != 0) + { + if (s == 0 || s == 5 || s == __INT_MAX__) + link_error (); + } + else + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -1U) + link_error (); + } +} + +void +f2 (int s) +{ + if (s >> BITSM1 == 0) + { + if (s == -1 || s == -5 || s == -__INT_MAX__ - 1) + link_error (); + } + else + { + if (s == 0 || s == 5 || s == __INT_MAX__) + link_error (); + } +} + +void +f3 (unsigned int s) +{ + if ((s & (1U << BITSM1)) != 0) + { + if (s == 0 || s == 5 || s == __INT_MAX__) + link_error (); + } + else + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -1U) + link_error (); + } +} + +void +f4 (int s) +{ + if ((s & (1U << BITSM1)) == 0) + { + if (s == -1 || s == -5 || s == -__INT_MAX__ - 1) + link_error (); + } + else + { + if (s == 0 || s == 5 || s == __INT_MAX__) + link_error (); + } +} + +void +f5 (unsigned int s) +{ + if ((int) s < 0) + { + if (s == 0 || s == 5 || s == __INT_MAX__) + link_error (); + } + else + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -1U) + link_error (); + } +} + +void +f6 (unsigned int s) +{ + if ((int) s < 4) + { + if (s == 4 || s == 6 || s == __INT_MAX__) + link_error (); + } + else + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -1U + || s == 3 || s == 0) + link_error (); + } +} + +void +f7 (unsigned int s) +{ + if ((int) s <= -7) + { + if (s == -6U || s == -1U || s == 0 || s == 4 || s == 6 || s == __INT_MAX__) + link_error (); + } + else + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -9U + || s == -7U) + link_error (); + } +} + +void +f8 (unsigned int s) +{ + if ((int) s >= 4) + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -1U + || s == 3 || s == 0) + link_error (); + } + else + { + if (s == 4 || s == 6 || s == __INT_MAX__) + link_error (); + } +} + +void +f9 (unsigned int s) +{ + if ((int) s > -7) + { + if (s == 1U + __INT_MAX__ || s == 6U + __INT_MAX__ || s == -9U + || s == -7U) + link_error (); + } + else + { + if (s == -6U || s == -1U || s == 0 || s == 4 || s == 6 || s == __INT_MAX__) + link_error (); + } +} + +int +main () +{ + return 0; +} -- cgit v1.2.3