From 4db56dfe7a3e4cb95d55a4433eebaa83fc4b8e09 Mon Sep 17 00:00:00 2001 From: Yvan Roux Date: Tue, 14 Apr 2015 12:12:29 +0000 Subject: [PATCH] Add missing testcase. 2015-04-14 Yvan Roux PR target/65648 * gcc.c-torture/execute/pr65648.c: New test. From-SVN: r222083 --- gcc/testsuite/ChangeLog | 5 +++ gcc/testsuite/gcc.c-torture/execute/pr65648.c | 34 +++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/execute/pr65648.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 37285f9c9fc..0c43e9c63f7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-04-14 Yvan Roux + + PR target/65648 + * gcc.c-torture/execute/pr65648.c: New test. + 2015-04-14 Rainer Orth * gcc.target/i386/avx512dq-vfpclasspd-2.c (check_fp_class_dp): Use diff --git a/gcc/testsuite/gcc.c-torture/execute/pr65648.c b/gcc/testsuite/gcc.c-torture/execute/pr65648.c new file mode 100644 index 00000000000..88a2fc9a22a --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr65648.c @@ -0,0 +1,34 @@ +/* PR target/65648 */ + +int a = 0, *b = 0, c = 0; +static int d = 0; +short e = 1; +static long long f = 0; +long long *i = &f; +unsigned char j = 0; + +__attribute__((noinline, noclone)) void +foo (int x, int *y) +{ + asm volatile ("" : : "r" (x), "r" (y) : "memory"); +} + +__attribute__((noinline, noclone)) void +bar (const char *x, long long y) +{ + asm volatile ("" : : "r" (x), "r" (&y) : "memory"); + if (y != 0) + __builtin_abort (); +} + +int +main () +{ + int k = 0; + b = &k; + j = (!a) - (c <= e); + *i = j; + foo (a, &k); + bar ("", f); + return 0; +} -- 2.30.2