Displaying 3 results from an estimated 3 matches for "l_lwz".
2016 Jan 06
2
DFAPacketizer, Scheduling and LoadLatency
...;\t$rD, $src"), pattern> {
bits<5> rD;
bits<21> src;
let Inst{25-21} = rD;
let Inst{20-0} = src;
}
class LOADi32<bits<4> subop, string asmstring, PatFrag opNode>
: LOAD<subop, asmstring, [(set (i32 GPR:$rD), (opNode ADDRri:$src))]>;
let Itinerary = l_lwz in
def LWZ : LOADi32<0x1, "l.lwz", load>;
My instruction itinerary data looks like the following
InstrItinData<l_lwz , [InstrStage<1, [Slot0, Slot1]>]>,
and my LoadLatency is set to 2.
As you can see mayLoad is never really set to 1 anywhere however it still
see...
2015 Nov 17
2
DFAPacketizer, Scheduling and LoadLatency
> In particular, the LoadLatency is used in defaultDefLatency:
>
> /// Return the default expected latency for a def based on it's opcode.
> unsigned TargetInstrInfo::defaultDefLatency(
> const MCSchedModel &SchedModel, const MachineInstr *DefMI) const {
> if (DefMI->isTransient())
> return 0;
> if (DefMI->mayLoad())
> return
2016 Mar 30
3
infer correct types from the pattern
i'm getting a
Could not infer all types in pattern!
error in my backend. it is happening on the following instruction:
VGETITEM: (set GPR:{i32:f32}:$rD, (extractelt:{i32:f32}
VR:{v4i32:v4f32}:$rA, GPR:i32:$rB)).
how do i make it use appropriate types? in other words if it is f32 then
use v4v32 and if it is i32 then use v4f32. i'm not sure even where to start?
any help is appreciated.