[LLVMdev] VLIWPacketizerList: failing to schedule terminators

Tom Stellard thomas.stellard at amd.com
Thu Mar 29 12:23:17 PDT 2012


On Thu, Mar 29, 2012 at 01:50:58PM -0500, Sergei Larin wrote:
> Tom, 
> 
>   What is in your isSchedulingBoundary? If it contains isLabel you might
> need to disable that assert:
> 
> assert(!MI->isTerminator() && !MI->isLabel() &&
>            "Cannot schedule terminators or labels!");
> 
> Sergei Larin
> 
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum.
> 
> 

I haven't implemented it, so it's still the default implementation.
Though, the assertion failure is happening before the main packetizer
loop, so  it doesn't look like that function is ever called.

-Tom


> > -----Original Message-----
> > From: Tom Stellard [mailto:thomas.stellard at amd.com]
> > Sent: Thursday, March 29, 2012 11:01 AM
> > To: Anshuman Dasgupta; Sergei Larin
> > Cc: llvmdev at cs.uiuc.edu
> > Subject: VLIWPacketizerList: failing to schedule terminators
> > 
> > Hi,
> > 
> > I'm trying to use the VLIWPacketizerList to schedule instructions for
> > the R600 target, and I'm running into this assertion failure:
> > ScheduleDAGInstrs.cpp:558: Cannot schedule terminators or labels!
> > 
> > I think I might not be using the VLIWPacketizerList class correctly.
> > I've attached my code to this email.  Can anyone spot what I'm doing
> > wrong?
> > 
> > Also, I had to add a LiveIntervals * parameter to the constructor of
> > this class in order to do pre-RA scheduling.
> > 
> > 
> > Thanks,
> > Tom
> 
> 




More information about the llvm-dev mailing list