From 42a0ee80d1e865a191c4b829366e1b4ece94ee97 Mon Sep 17 00:00:00 2001 From: jakub Date: Fri, 27 Nov 2015 12:12:35 +0000 Subject: [PATCH] PR rtl-optimization/68250 * gcc.c-torture/execute/pr68250.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231009 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 5 ++++ gcc/testsuite/gcc.c-torture/execute/pr68250.c | 40 +++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr68250.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fe39c93..b5b837d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-11-27 Jakub Jelinek + + PR rtl-optimization/68250 + * gcc.c-torture/execute/pr68250.c: New test. + 2015-11-27 Marek Polacek * gcc.dg/pr63568.c: Convert to GIMPLE. diff --git a/gcc/testsuite/gcc.c-torture/execute/pr68250.c b/gcc/testsuite/gcc.c-torture/execute/pr68250.c new file mode 100644 index 0000000..f00234a --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr68250.c @@ -0,0 +1,40 @@ +/* PR rtl-optimization/68250 */ + +signed char a, b, h, k, l, m, o; +short c, d, n; +int e, f, g, j, q; + +void +fn1 (void) +{ + int p = b || a; + n = o > 0 || d > 1 >> o ? d : d << o; + for (; j; j++) + m = c < 0 || m || c << p; + l = f + 1; + for (; f < 1; f = 1) + k = h + 1; +} + +__attribute__((noinline, noclone)) void +fn2 (int k) +{ + if (k != 1) + __builtin_abort (); +} + +int +main () +{ + signed char i; + for (; e < 1; e++) + { + fn1 (); + if (k) + i = k; + if (i > q) + g = 0; + } + fn2 (k); + return 0; +} -- 2.7.4