[llvm-dev] DFAPacketizer, Scheduling and LoadLatency

Krzysztof Parzyszek via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 17 11:15:43 PST 2015


On 11/17/2015 12:26 PM, Rail Shafigulin wrote:
>
> I tried setting
> let mayLoad = 1 {
>    class InstrLD .... {
>     }
> }
>
> But that didn't seem to work. When I looked at the debug output the
> latency for the load instruction was set to 1.
>
> However when I changed load itinerary description in the schedule to
>
> def MyTargetItineraries :
>      ..............
>      InstrItinData<LD, [InstrStage<2, [BranchSlot, NonBranchSlot], 1>]>,
>      ..............
>
> That seem to produce correct latency in the debug output.
>
> Do you know what could be the problem? Am I missing something? To give
> you a full disclosure, I'm using LLVM 3.5 and at the moment I can't
> switch to the latest version.
>
> Any help is appreciated.

I think that the LoadLatency is used as a last resort when there is no 
itinerary available for a given instruction.  In your case, there is one 
and so the LoadLatency is ignored, and instead the latency from the 
itinerary is used.

-Krzysztof

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, 
hosted by The Linux Foundation


More information about the llvm-dev mailing list