[llvm] r194373 - [NVPTX] Blacklist TailDuplicate pass

Justin Holewinski justin.holewinski at gmail.com
Mon Nov 11 07:18:00 PST 2013


http://llvm.org/bugs/show_bug.cgi?id=17876


On Mon, Nov 11, 2013 at 10:06 AM, Justin Holewinski <
justin.holewinski at gmail.com> wrote:

> The problem is here (TailDuplication.cpp):
>
> 236├>      MachineInstr *DefMI = MRI->getVRegDef(VReg);
>
> MachineRegisterInfo::getVRegDef assumes SSA form (and assertions if its
> not), but MRI->isSSA() is false at this time.
>
> I plan on filing a bug for this, but I don't have the time to look into
> this pass at the moment.
>
>
> On Mon, Nov 11, 2013 at 9:50 AM, Tom Stellard <tom at stellard.net> wrote:
>
>> On Mon, Nov 11, 2013 at 12:58:14PM -0000, Justin Holewinski wrote:
>> > Author: jholewinski
>> > Date: Mon Nov 11 06:58:14 2013
>> > New Revision: 194373
>> >
>> > URL: http://llvm.org/viewvc/llvm-project?rev=194373&view=rev
>> > Log:
>> > [NVPTX] Blacklist TailDuplicate pass
>> >
>> > This causes issues with virtual registers.  We will likely need
>> > to fix TailDuplicate in the future, or introduce a new version
>> > that plays nicely with vregs.
>> >
>>
>> Do you have a testcase to demonstrate what TailDuplicate was doing
>> wrong?  It would be great if you could file a bug for this.
>>
>> -Tom
>>
>> > Modified:
>> >     llvm/trunk/lib/Target/NVPTX/NVPTXTargetMachine.cpp
>> >
>> > Modified: llvm/trunk/lib/Target/NVPTX/NVPTXTargetMachine.cpp
>> > URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/NVPTX/NVPTXTargetMachine.cpp?rev=194373&r1=194372&r2=194373&view=diff
>> >
>> ==============================================================================
>> > --- llvm/trunk/lib/Target/NVPTX/NVPTXTargetMachine.cpp (original)
>> > +++ llvm/trunk/lib/Target/NVPTX/NVPTXTargetMachine.cpp Mon Nov 11
>> 06:58:14 2013
>> > @@ -126,6 +126,7 @@ void NVPTXPassConfig::addIRPasses() {
>> >    disablePass(&PrologEpilogCodeInserterID);
>> >    disablePass(&MachineCopyPropagationID);
>> >    disablePass(&BranchFolderPassID);
>> > +  disablePass(&TailDuplicateID);
>> >
>> >    TargetPassConfig::addIRPasses();
>> >    addPass(createGenericToNVVMPass());
>> >
>> >
>> > _______________________________________________
>> > llvm-commits mailing list
>> > llvm-commits at cs.uiuc.edu
>> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
>
> --
>
> Thanks,
>
> Justin Holewinski
>



-- 

Thanks,

Justin Holewinski
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131111/78d04c62/attachment.html>


More information about the llvm-commits mailing list