MLIR 23.0.0git
mlir::xegpu::detail::axis_dataflow Namespace Reference

Classes

struct  AxisInfo
 Per-dimension axis information for an SSA vector value of integer / index type. More...
class  AxisInfoAnalysis
 Sparse forward dataflow analysis that computes AxisInfo for vector values reachable from the entry of the analyzed op. More...

Typedefs

using AxisInfoLattice = dataflow::Lattice<AxisInfo>

Functions

static int64_t highestPow2Divisor (int64_t v)
 Power-of-two divisor of v. Returns kAxisInfoTop when v == 0.
static AxisInfo entryStateFor (Value v)
 Initial lattice value for an SSA value when no transfer function applies.
static AxisInfo splatAxisInfo (ArrayRef< int64_t > shape, int64_t c)
 AxisInfo for a tensor that is constant c everywhere.

Variables

static constexpr int64_t kAxisInfoTop = 1LL << 30
 Sentinel "very large" value for unconstrained dimensions.

Typedef Documentation

◆ AxisInfoLattice

Function Documentation

◆ entryStateFor()

AxisInfo mlir::xegpu::detail::axis_dataflow::entryStateFor ( Value v)
static

Initial lattice value for an SSA value when no transfer function applies.

Definition at line 171 of file XeGPUContiguityAnalysis.cpp.

References mlir::xegpu::detail::axis_dataflow::AxisInfo::getPessimistic(), and mlir::Value::getType().

Referenced by mlir::xegpu::detail::axis_dataflow::AxisInfoAnalysis::setToEntryState().

◆ highestPow2Divisor()

int64_t mlir::xegpu::detail::axis_dataflow::highestPow2Divisor ( int64_t v)
static

Power-of-two divisor of v. Returns kAxisInfoTop when v == 0.

Definition at line 163 of file XeGPUContiguityAnalysis.cpp.

References kAxisInfoTop.

Referenced by splatAxisInfo().

◆ splatAxisInfo()

Variable Documentation

◆ kAxisInfoTop

int64_t mlir::xegpu::detail::axis_dataflow::kAxisInfoTop = 1LL << 30
staticconstexpr

Sentinel "very large" value for unconstrained dimensions.

Any real shape is far smaller, so component-wise min collapses this to the truth. It is not numeric_limits<int64_t>::max() because divisibility values are multiplied (e.g. in visitMul); 1 << 30 keeps those products well within int64_t.

Definition at line 59 of file XeGPUContiguityAnalysis.cpp.

Referenced by highestPow2Divisor().