[LLVMdev] [llvm-commits] Bottom-Up Scheduling?

Hal Finkel hfinkel at anl.gov
Tue Nov 29 06:29:18 PST 2011


On Mon, 2011-11-28 at 15:45 -0800, Andrew Trick wrote:
> 
> On Nov 28, 2011, at 3:35 PM, Hal Finkel wrote:
> 
> > > 
> > > Is EmitInstruction used in bottom-up scheduling at all? The
> > > version in
> > > the ARM recognizer seems essential, but in all of the regression
> > > tests
> > > (and some other .ll files I have lying around), it is never
> > > called. It
> > > seems that only Reset() and getHazardType() are called. Could you
> > > please
> > > explain the calling sequence?
> > 
> > I feel that I should clarify my comment: For PPC, now that Hybrid
> > scheduling is enabled, EmitInstruction seems never to be called (at
> > least it is not called when running any PPC codegen test in the
> > regression-test collection).
> 
> 
> Hal,
> 
> 
> Since PPCHazardRecognizer is not derived from
> ScoreboardHazardRecognizer, you'll need to initialize MaxLookAhead to
> the max depth of your target's itinerary.

Andy,

Thanks! Since I have to change PPCHazardRecognizer for bottom-up support
anyway, is there any reason not to have it derive from
ScoreboardHazardRecognizer at this point? It looks like the custom
bundling logic could be implemented on top of the scoreboard recognizer
(that seems similar to what ARM's recognizer is doing).

 -Hal

> 
> 
>  See how this is done in the ScoreboardHazardRecognizer ctor:
> >    MaxLookAhead = ScoreboardDepth;
>   
> 
> 
> -Andy
> 
> 

-- 
Hal Finkel
Postdoctoral Appointee
Leadership Computing Facility
Argonne National Laboratory




More information about the llvm-dev mailing list