[LLVMdev] LiveInterval Questions

Christopher Lamb christopher.lamb at gmail.com
Wed Jan 16 23:19:10 PST 2008


On Jan 16, 2008, at 11:49 AM, David Greene wrote:

> I had been assuming that give a LiveRange a, a.valno->def, if
> valid, would be the same as a.start.  But this is apparently not
> always the case.  For example:
>
>     Predecessors according to CFG: 0x839d130 (#3) 0x8462780 (#35)
> 308	%reg1051 = MOV64rr %reg1227<kill>
> 312	%reg1052 = MOV64rr %reg1228<kill>
> 316	%reg1053 = MOV64rr %reg1229<kill>
> 320	%reg1054 = MOV64rr %reg1230<kill>
> 324	%reg1055<dead> = LEA64r %reg1047, 1, %reg1053, 0
> 328	%reg1135 = MOVSX64rr32 %reg1025
> 332	%reg1136 = MOV64rr %reg1135<kill>
> 336	%reg1136 = ADD64ri32 %reg1136, -4, %EFLAGS<imp-def,dead>
> 340	TEST64rr %reg1136<kill>, %reg1136, %EFLAGS<imp-def>
> 344	JNS mbb<file solve.f, line 23, in loop at depth 1,  
> bb16,0x83a2c70>,
> %EFLAGS<imp-use,kill>

David, could you post the live ins/outs for the block? My thinking is  
that %reg1055 may be live through the block.
--
Christopher Lamb



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080116/809460ff/attachment.html>


More information about the llvm-dev mailing list