MLIR  18.0.0git
Classes | Typedefs | Functions | Variables
Simplex.cpp File Reference
#include "mlir/Analysis/Presburger/Simplex.h"
#include "mlir/Analysis/Presburger/Matrix.h"
#include "mlir/Support/MathExtras.h"
#include "llvm/Support/Compiler.h"
#include <numeric>
#include <optional>

Go to the source code of this file.


class  mlir::presburger::GBRSimplex
 Given a simplex for a polytope, construct a new simplex whose variables are identified with a pair of points (x, y) in the original polytope. More...


using Direction = Simplex::Direction


static LLVM_ATTRIBUTE_UNUSED SmallVector< MPInt, 8 > scaleAndAddForAssert (ArrayRef< MPInt > a, const MPInt &scale, ArrayRef< MPInt > b)
static bool isRangeDivisibleBy (ArrayRef< MPInt > range, const MPInt &divisor)


const int nullIndex = std::numeric_limits<int>::max()

Typedef Documentation

◆ Direction

Definition at line 19 of file Simplex.cpp.

Function Documentation

◆ isRangeDivisibleBy()

static bool isRangeDivisibleBy ( ArrayRef< MPInt range,
const MPInt divisor 

Definition at line 354 of file Simplex.cpp.

◆ scaleAndAddForAssert()

static LLVM_ATTRIBUTE_UNUSED SmallVector<MPInt, 8> scaleAndAddForAssert ( ArrayRef< MPInt a,
const MPInt scale,
ArrayRef< MPInt b 

Definition at line 26 of file Simplex.cpp.

Variable Documentation

◆ nullIndex

const int nullIndex = std::numeric_limits<int>::max()