aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Belevantsev <abel@ispras.ru>2016-03-31 14:37:08 +0000
committerAndrey Belevantsev <abel@ispras.ru>2016-03-31 14:37:08 +0000
commit2f39f539b4f185f5c84a1fda68098b2e6a0a785e (patch)
tree9d7c1adab67dc2a49d85ff1bc5613cc6f195f576
parente74a999040bdc75a696c438569937d4dc5049492 (diff)
PR target/70292
* gcc.c-torture/pr70292.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@234627 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/pr70292.c12
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d1dd5ea7680..49c25095da7 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2016-03-31 Andrey Belevantsev <abel@ispras.ru>
+
+ PR target/70292
+ * gcc.c-torture/pr70292.c: New test.
+
2016-03-31 Marek Polacek <polacek@redhat.com>
PR c/70297
diff --git a/gcc/testsuite/gcc.dg/pr70292.c b/gcc/testsuite/gcc.dg/pr70292.c
new file mode 100644
index 00000000000..458cccde834
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr70292.c
@@ -0,0 +1,12 @@
+/* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */
+/* { dg-options "-O1 -fno-inline -fno-dce -fschedule-insns -fselective-scheduling -fno-tree-dce" } */
+
+void bar() {}
+
+int t106_1mul(unsigned int x, unsigned int y) {
+ int r;
+ if (__builtin_mul_overflow(x, y, &r)) {
+ bar();
+ }
+ return r;
+}