Delay Slot Filler

Hello,
I am trying to improve lib/Target/Mips/MipsDelaySlotFiller.cpp by
substituting nops emitting with instructions reordering. I need
a hazard recognizer, but I haven't found any. Do I have to create
one, or looking bad and there is any?

Thanks for any reply.

Hi Filip,

I am trying to improve lib/Target/Mips/MipsDelaySlotFiller.cpp by
substituting nops emitting with instructions reordering. I need
a hazard recognizer, but I haven't found any. Do I have to create
one, or looking bad and there is any?

You have to create one! Take a look at PPCHazardRecognizers.cpp
and SPUHazardRecognizers.cpp for examples.
If you can, contribute it back! :slight_smile:

You have to create one! Take a look at PPCHazardRecognizers.cpp
and SPUHazardRecognizers.cpp for examples.
If you can, contribute it back! :slight_smile:

There is also generic hazard recognizer which works on top of
instruction itineraries.

You have to create one! Take a look at PPCHazardRecognizers.cpp
and SPUHazardRecognizers.cpp for examples.
If you can, contribute it back! :slight_smile:

There is also generic hazard recognizer which works on top of
instruction itineraries.

Thanks for both answers. I created one meanwhile, that recognizes
dependencies between two instructions based on MachineInstr::getOperand,
TargetInstrDesc::getImplicitUses and TargetInstrDesc::getImplicitDefs.
It works pretty fine. I will contribute it back as soon as I can (at
first, I have to ask my bachelor's thesis leader).