Displaying 5 results from an estimated 5 matches for "rewriteinstructionsforspil".
Did you mean:
rewriteinstructionsforspills
2008 May 08
1
[LLVMdev] Possible LiveIntervals bug
At line 1155 of LiveIntervalAnalysis.cpp (in
LiveIntervals::rewriteInstructionsForSpills), should the condition
be:
if (ImpUse && MI != ReMatDefMI && MI != ReMatOrigDefMI)
instead of:
if (ImpUse && MI != ReMatDefMI)
?
After all, ReMatDefMI is a clone of the original def instruction
(ReMatOrigDefMI). I'm seeing bad things happen, with intervals
getti...
2009 Jan 13
0
[LLVMdev] Possible bug in LiveIntervals (triggered on the XCore target)?
...--march=xcore -f bugpoint-reduced-simplified.bc
>
> Any ideas about the reasons of this bug?
>
> Thanks,
> -Roman
It looks like it is trying to rematerialize a load from fixed stack slot
(LDWSP instruction). This has an implicit use of the SP register which
is non allocatable.
rewriteInstructionsForSpills calls getReMatImplicitUse which returns the
SP register. This is then followed by a call to getInterval for this
register which fails. The attached patch causes getReMatImplicitUse to
ignore non allocatable physical registers, which fixes the issue for me.
Does this look OK?
--
Richard Osbo...
2009 Jan 14
2
[LLVMdev] Possible bug in LiveIntervals (triggered on the XCore target)?
...d.bc
>>
>> Any ideas about the reasons of this bug?
>>
>> Thanks,
>> -Roman
> It looks like it is trying to rematerialize a load from fixed stack
> slot (LDWSP instruction). This has an implicit use of the SP
> register which is non allocatable.
>
> rewriteInstructionsForSpills calls getReMatImplicitUse which returns
> the SP register. This is then followed by a call to getInterval for
> this register which fails. The attached patch causes
> getReMatImplicitUse to ignore non allocatable physical registers,
> which fixes the issue for me. Does this lo...
2009 Jan 13
3
[LLVMdev] Possible bug in LiveIntervals (triggered on the XCore target)?
Hi again,
Now, after I fixed the graph coloring regalloc bug that was triggered
by the ARM target, I continue testing and found another bug, this time
on the XCore target. First I thought that it is again specific to my
register allocator, but it seems to be trigerred also by LLVM's
linearscan register allocator.
I don't know if the XCore target is stable enough in LLVM, or may be I
2009 Jan 14
0
[LLVMdev] Possible bug in LiveIntervals (triggered on the XCore target)?
...f this bug?
>>>
>>> Thanks,
>>> -Roman
>>>
>> It looks like it is trying to rematerialize a load from fixed stack
>> slot (LDWSP instruction). This has an implicit use of the SP
>> register which is non allocatable.
>>
>> rewriteInstructionsForSpills calls getReMatImplicitUse which returns
>> the SP register. This is then followed by a call to getInterval for
>> this register which fails. The attached patch causes
>> getReMatImplicitUse to ignore non allocatable physical registers,
>> which fixes the issue for...