------- Comment #1 from gilles dot chanteperdrix at xenomai dot org  2009-01-05 
15:21 -------
The following, even simpler test case:

unsigned long long f(unsigned long long ull)
{
        register unsigned long long *__r0 __asm__ ("r0") = &ull;
        __asm__ __volatile__ ("" : "+r" (__r0));
        return * __r0;
}

gives the same warning, and the following assembly code:

00000000 <f>:
   0:   e24dd008        sub     sp, sp, #8      ; 0x8
   4:   e28d0008        add     r0, sp, #8      ; 0x8
   8:   e16000f8        strd    r0, [r0, #-8]!
   c:   e8900003        ldm     r0, {r0, r1}
  10:   e28dd008        add     sp, sp, #8      ; 0x8
  14:   e12fff1e        bx      lr


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38674

Reply via email to