struct IVConditionInfo

Declaration

struct IVConditionInfo { /* full declaration omitted */ };

Description

Struct to hold information about a partially invariant condition.

Declared at: llvm/include/llvm/Transforms/Utils/LoopUtils.h:518

Member Variables

public SmallVector<llvm::Instruction*> InstToDuplicate
Instructions that need to be duplicated and checked for the unswitching condition.
public llvm::Constant* KnownValue = nullptr
Constant to indicate for which value the condition is invariant.
public bool PathIsNoop = true
True if the partially invariant path is no-op (=does not have any side-effects and no loop value is used outside the loop).
public llvm::BasicBlock* ExitForPath = nullptr
If the partially invariant path reaches a single exit block, ExitForPath is set to that block. Otherwise it is nullptr.