LLVM 24.0.0git
llvm::SwitchCG::JumpTable Struct Reference

#include "llvm/CodeGen/SwitchLoweringUtils.h"

Public Member Functions

 JumpTable (Register R, unsigned J, MachineBasicBlock *M, MachineBasicBlock *D, std::optional< SDLoc > SL)

Public Attributes

Register Reg
 The virtual register containing the index of the jump table entry to jump to.
unsigned JTI
 The JumpTableIndex for this jump table in the function.
MachineBasicBlock * MBB
 The MBB into which to emit the code for the indirect jump.
MachineBasicBlock * Default
 The MBB of the default bb, which is a successor of the range check MBB.
std::optional< SDLoc > SL
 The debug location of the instruction this JumpTable was produced from.

Detailed Description

Definition at line 170 of file SwitchLoweringUtils.h.

Constructor & Destructor Documentation

◆ JumpTable()

llvm::SwitchCG::JumpTable::JumpTable ( Register R,
unsigned J,
MachineBasicBlock * M,
MachineBasicBlock * D,
std::optional< SDLoc > SL )
inline

Definition at line 185 of file SwitchLoweringUtils.h.

References D(), Default, JTI, MBB, Reg, and SL.

Member Data Documentation

◆ Default

MachineBasicBlock* llvm::SwitchCG::JumpTable::Default

The MBB of the default bb, which is a successor of the range check MBB.

This is when updating PHI nodes in successors.

Definition at line 180 of file SwitchLoweringUtils.h.

Referenced by JumpTable(), and llvm::SelectionDAGBuilder::visitJumpTableHeader().

◆ JTI

unsigned llvm::SwitchCG::JumpTable::JTI

The JumpTableIndex for this jump table in the function.

Definition at line 175 of file SwitchLoweringUtils.h.

Referenced by JumpTable(), and llvm::SelectionDAGBuilder::visitJumpTable().

◆ MBB

MachineBasicBlock* llvm::SwitchCG::JumpTable::MBB

The MBB into which to emit the code for the indirect jump.

Definition at line 177 of file SwitchLoweringUtils.h.

Referenced by JumpTable(), and llvm::SelectionDAGBuilder::visitJumpTableHeader().

◆ Reg

Register llvm::SwitchCG::JumpTable::Reg

The virtual register containing the index of the jump table entry to jump to.

Definition at line 173 of file SwitchLoweringUtils.h.

Referenced by JumpTable(), llvm::SelectionDAGBuilder::visitJumpTable(), and llvm::SelectionDAGBuilder::visitJumpTableHeader().

◆ SL

std::optional<SDLoc> llvm::SwitchCG::JumpTable::SL

The debug location of the instruction this JumpTable was produced from.

Definition at line 183 of file SwitchLoweringUtils.h.

Referenced by JumpTable(), llvm::SelectionDAGBuilder::visitJumpTable(), and llvm::SelectionDAGBuilder::visitJumpTableHeader().


The documentation for this struct was generated from the following file: