class InstructionOrdering

Declaration

class InstructionOrdering { /* full declaration omitted */ };

Description

Record instruction ordering so we can query their relative positions within a function. Meta instructions are given the same ordinal as the preceding non-meta instruction. Class state is invalid if MF is modified after calling initialize.

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:30

Member Variables

private DenseMap<const llvm::MachineInstr*, unsigned int> InstNumberMap
Each instruction is assigned an order number.

Method Overview

  • public void clear()
  • public void initialize(const llvm::MachineFunction & MF)
  • public bool isBefore(const llvm::MachineInstr * A, const llvm::MachineInstr * B) const

Methods

void clear()

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:33

void initialize(const llvm::MachineFunction& MF)

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:32

Parameters

const llvm::MachineFunction& MF

bool isBefore(const llvm::MachineInstr* A,
              const llvm::MachineInstr* B) const

Description

Check if instruction \p A comes before \p B, where \p A and \p B both belong to the MachineFunction passed to initialize().

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:37

Parameters

const llvm::MachineInstr* A
const llvm::MachineInstr* B