struct BlockFrequencyInfoImplBase::Weight

Declaration

struct BlockFrequencyInfoImplBase::Weight { /* full declaration omitted */ };

Description

Unscaled probability weight. Probability weight for an edge in the graph (including the successor/target node). All edges in the original function are 32-bit. However, exit edges from loop packages are taken from 64-bit exit masses, so we need 64-bits of space in general. In addition to the raw weight amount, Weight stores the type of the edge in the current context (i.e., the context of the loop being processed). Is this a local edge within the loop, an exit from the loop, or a backedge to the loop header?

Declared at: llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h:365

Member Variables

public llvm::BlockFrequencyInfoImplBase::Weight::DistType Type = Local
public llvm::BlockFrequencyInfoImplBase::BlockNode TargetNode
public uint64_t Amount = 0

Method Overview

  • public Weight()
  • public Weight(llvm::BlockFrequencyInfoImplBase::Weight::DistType Type, llvm::BlockFrequencyInfoImplBase::BlockNode TargetNode, uint64_t Amount)

Methods

Weight()

Declared at: llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h:371

Weight(llvm::BlockFrequencyInfoImplBase::Weight::
           DistType Type,
       llvm::BlockFrequencyInfoImplBase::BlockNode
           TargetNode,
       uint64_t Amount)

Declared at: llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h:372

Parameters

llvm::BlockFrequencyInfoImplBase::Weight::DistType Type
llvm::BlockFrequencyInfoImplBase::BlockNode TargetNode
uint64_t Amount