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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #23739|0                           |1
        is obsolete|                            |

--- Comment #7 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-07-11 
16:02:28 UTC ---
Created attachment 24740
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24740
Tentative patch for SPARC

This appears to do the trick for the SPARC.  In particular:

(gdb) run
Starting program: /nile.build/botcazou/gcc-head/sparc-sun-solaris2.8/pr48220

Breakpoint 1, fn2 (a=1, b=2, c=1) at pr48220.c:13
13      {
(gdb) disass
Dump of assembler code for function fn2:
=> 0x000106cc <+0>:     save  %sp, -96, %sp
   0x000106d0 <+4>:     clr  %i0
   0x000106d4 <+8>:     mov  5, %o0
   0x000106d8 <+12>:    mov  6, %o1
   0x000106dc <+16>:    call  0x106c4 <fn1>
   0x000106e0 <+20>:    mov  7, %o2
   0x000106e4 <+24>:    rett  %i7 + 8
   0x000106e8 <+28>:    nop
End of assembler dump.
(gdb) p a
$1 = 1
(gdb) p &a
Address requested for identifier "a" which is in register $o0
(gdb) nexti
17      }
(gdb) p a
$2 = 1
(gdb) p &a
Address requested for identifier "a" which is in register $i0
(gdb) nexti
15        fn1 (5, 6, 7);
(gdb) p a
$3 = <optimized out>

and the location is DW_OP_GNU_entry_value pointing to $o0 from there on.


Jakub, what do you think?

Reply via email to