Hi!

On Wed, Mar 01, 2017 at 08:26:36PM +0100, Uros Bizjak wrote:
> 2017-03-01  Uros Bizjak  <ubiz...@gmail.com>
> 
>     * config/i386/i386.c (print_reg): Warn for values of
>     unsupported size in integer register.
> 
> testsuite/ChangeLog:
> 
> 2017-03-01  Uros Bizjak  <ubiz...@gmail.com>
> 
>     * gcc.target/i386/invsize-2.c: New test.
>     * gcc.target/i386/invsize-3.c: Ditto.
>     * gcc.target/i386/invsize-4.c: Ditto.
>     * gcc.target/i386/pr66274.c: Expect "unsuported size" warning.
>     * gcc.target/i386/stackalign/asm-1.c: Ditto.
> 
> Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

This broke
FAIL: gcc.dg/pr57134.c (test for excess errors)
on i686-linux, the warning triggers there.

It seems "# %0 %1" actually isn't needed for reproduction of the original
bug (tried powerpc64-linux cross at r200000 where it ICEs even with ""
and succeeds at r204000), so is this ok for trunk?

Other option is to add { dg-final { dg-warning "..." { target ia32 } } }
but that really doesn't scale to other targets, or -w.

2017-03-02  Jakub Jelinek  <ja...@redhat.com>

        * gcc.dg/pr57134.c: Use empty inline asm string literal.

--- gcc/testsuite/gcc.dg/pr57134.c.jj   2013-06-19 19:28:33.000000000 +0200
+++ gcc/testsuite/gcc.dg/pr57134.c      2017-03-02 23:24:40.329317713 +0100
@@ -18,7 +18,7 @@ static __inline__ __attribute__((always_
 atomic64_read(const atomic64_t *v)
 {
  int64_t t;
- __asm__ __volatile__("# %0, %1" : "=r"(t) : "m"(v->counter));
+ __asm__ __volatile__("" : "=r"(t) : "m"(v->counter));
  return t;
 }
 


        Jakub

Reply via email to