Displaying 3 results from an estimated 3 matches for "currentpacketmis".
2016 Jan 20
2
a bundle with one instruction
...ket with
one instruction? Current code to end packet doesn't handle this case:
// endPacket - End the current packet, bundle packet instructions and reset
// DFA state.
void VLIWPacketizerList::endPacket(MachineBasicBlock *MBB,
MachineInstr *MI) {
if (CurrentPacketMIs.size() > 1) {
MachineInstr *MIFirst = CurrentPacketMIs.front();
finalizeBundle(*MBB, MIFirst, MI);
}
CurrentPacketMIs.clear();
ResourceTracker->clearResources();
}
My initial idea was to simply add a NOP instruction to the
CurrentPacketMIs, but it is proving to be more difficul...
2015 Nov 17
2
DFAPacketzer, Hexagon and bundles with 1 instruction
...uction, but I don't quite get it.
Here is the code that I have for a endPacket
// endPacket - End the current packet, bundle packet instructions and reset
// DFA state.
void VLIWPacketizerList::endPacket(MachineBasicBlock *MBB,
MachineInstr *MI) {
if (CurrentPacketMIs.size() > 1) {
MachineInstr *MIFirst = CurrentPacketMIs.front();
finalizeBundle(*MBB, MIFirst, MI);
}
CurrentPacketMIs.clear();
ResourceTracker->clearResources();
}
Based on this, it looks like packets with one instruction are not finalized
(finalizeBundle is the one which inser...
2012 Apr 19
0
[LLVMdev] Target Dependent Hexagon Packetizer patch
...the target interface.
>> - ScheduleDAGInstrs *SchedulerImpl;
>> + // The VLIW Scheduler.
>> + DefaultVLIWScheduler *VLIWScheduler;
>>
>> -protected:
>> // Vector of instructions assigned to the current packet.
>> std::vector<MachineInstr*> CurrentPacketMIs;
>> // DFA resource tracker.
>> DFAPacketizer *ResourceTracker;
>> - // Scheduling units.
>> - std::vector<SUnit> SUnits;
>> +
>> + // Generate MI -> SU map.
>> + std::map<MachineInstr*, SUnit*> MIToSUnit;
>>
>> p...