From f8f3e2fae8f92153d113e252bc647e4e29aabfbc Mon Sep 17 00:00:00 2001 From: ktkachov Date: Tue, 24 Nov 2015 13:35:56 +0000 Subject: [PATCH] Testcase for PR rtl-optimization/68381 PR rtl-optimization/68381 * gcc.c-torture/execute/pr68381.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230809 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.c-torture/execute/pr68381.c | 22 ++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr68381.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 47f7ea5..9f327b3 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2015-11-24 Kyrylo Tkachov + PR rtl-optimization/68381 + * gcc.c-torture/execute/pr68381.c: New test. + +2015-11-24 Kyrylo Tkachov + * gcc.target/aarch64/cmpimm_branch_1.c: New test. * gcc.target/aarch64/cmpimm_cset_1.c: Likewise. diff --git a/gcc/testsuite/gcc.c-torture/execute/pr68381.c b/gcc/testsuite/gcc.c-torture/execute/pr68381.c new file mode 100644 index 0000000..cb6abcb --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr68381.c @@ -0,0 +1,22 @@ +/* { dg-options "-O -fexpensive-optimizations -fno-tree-bit-ccp" } */ + +__attribute__ ((noinline, noclone)) +int +foo (unsigned short x, unsigned short y) +{ + int r; + if (__builtin_mul_overflow (x, y, &r)) + __builtin_abort (); + return r; +} + +int +main (void) +{ + int x = 1; + int y = 2; + if (foo (x, y) != x * y) + __builtin_abort (); + return 0; +} + -- 2.7.4