Liu Haibin <[EMAIL PROTECTED]> writes:

> Hi,
> 
> I got a dump of sha.c.27.flow2 from gcc 3.4.1. I don't quite
> understand the LOG_LINKS of insn 498. LOG_LINKS in insn 498 shows that
> it has a data dependence (a read after write dependence) with insn 3.
> Why is it so? I don't see any dependence between "mov r14 r4" and
> "addi r3, r4, 28". The bottom is the whole dump of the basic block.
> 
> (insn 3 4 11 0 (set (reg/v/f:SI 14 r14 [orig:46 sha_info ] [46])
>         (reg:SI 4 r4 [ sha_info ])) 8 {movsi_internal} (nil)
>     (expr_list:REG_DEAD (reg:SI 4 r4 [ sha_info ])
>         (nil)))
> 
> ........
> 
> (insn 498 375 560 0 (set (reg/f:SI 3 r3 [235])
>         (plus:SI (reg/v/f:SI 14 r14 [orig:46 sha_info ] [46])
>             (const_int 28 [0x1c]))) 20 {addsi3} (insn_list 3 (nil))
>     (nil))

I don't see any dependence between "mov r14,r4" and "addi r3,r4,28"
either, but the insn 498 you show is actually "addi r3,r14,28", and
that has a fairly obvious read-after-write dependency.

Ian

Reply via email to