From: Jakub Jelinek Date: Thu, 15 Jun 2000 15:25:52 +0000 (+0200) Subject: 20000614-1.c: New test. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d2f7db1d9db6d315a0dadff5c04849cd7a67d82e;p=gcc.git 20000614-1.c: New test. * gcc.dg/20000614-1.c: New test. * gcc.dg/20000614-2.c: New test. From-SVN: r34564 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 64c98bea592..24377d2063e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2000-06-14 Jakub Jelinek + + * gcc.dg/20000614-1.c: New test. + * gcc.dg/20000614-2.c: New test. + 2000-06-14 Hans-Peter Nilsson * g++.old-deja/g++.other/inline12.C: New test. diff --git a/gcc/testsuite/gcc.dg/20000614-1.c b/gcc/testsuite/gcc.dg/20000614-1.c new file mode 100644 index 00000000000..62d9b290267 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20000614-1.c @@ -0,0 +1,23 @@ +/* { dg-do run { target i?86-*-* } } */ +/* { dg-options "-O2" } */ + +void bar(char *p) +{ +} + +static inline void foo (unsigned long base, unsigned char val) +{ + val ^= (1<<2); + bar (val & (1<<5) ? "1" : "2"); + bar (val & (1<<4) ? "1" : "2"); + bar (val & (1<<3) ? "1" : "2"); + bar (val & (1<<2) ? "1" : "2"); + bar (val & (1<<1) ? "1" : "2"); + bar (val & (1<<0) ? "1" : "2"); + asm volatile ("": :"a" (val), "d" (base)); +} + +int main (void) +{ + foo (23, 1); +} diff --git a/gcc/testsuite/gcc.dg/20000614-2.c b/gcc/testsuite/gcc.dg/20000614-2.c new file mode 100644 index 00000000000..18d42ecf8cc --- /dev/null +++ b/gcc/testsuite/gcc.dg/20000614-2.c @@ -0,0 +1,27 @@ +/* { dg-do run { target i?86-*-* } } */ +/* { dg-options "-O2 -fno-strength-reduce" } */ + +void bar(char *p) +{ +} + +int main() +{ + union { + unsigned int val; + unsigned char p[4]; + } serial; + char buf[8]; + int i; + + serial.val = 0; + bar(buf); + for(i = 0; i < 8; i += 4) + { + serial.p [0] += buf [i + 0]; + serial.p [1] += buf [i + 1]; + serial.p [2] += buf [i + 2]; + serial.p [3] += buf [i + 3]; + } + return serial.val; +}