qat.backend.passes.legacy.lowering module
- class PartitionByPulseChannel
Bases:
LoweringPass
Separates a list of instructions into their respective pulse channels.
For targets that do not have native support for
Synchronize
, we can separate the instruction list into many lists of instructions, with each list only containing instructions that act on a single channel.This pass achieves the same as the
TriagePass
, but instead of saving the results in the results manager, returns the partitioned instructions. The only reason I’ve changed the name is to not confuse it with the TriagePass :)- run(ir, *args, **kwargs)
- Parameters:
ir¶ (
InstructionBuilder
) – The list of instructions stored in anInstructionBuilder
.res_mgr¶ – The result manager to save the analysis results.
- Return type: