MLIR  20.0.0git
Classes | Typedefs | Functions | Variables
Simplex.cpp File Reference
#include "mlir/Analysis/Presburger/Simplex.h"
#include "mlir/Analysis/Presburger/Fraction.h"
#include "mlir/Analysis/Presburger/IntegerRelation.h"
#include "mlir/Analysis/Presburger/Matrix.h"
#include "mlir/Analysis/Presburger/PresburgerSpace.h"
#include "mlir/Analysis/Presburger/Utils.h"
#include "llvm/ADT/DynamicAPInt.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallBitVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/LogicalResult.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <functional>
#include <limits>
#include <optional>
#include <tuple>
#include <utility>

Go to the source code of this file.

Classes

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...
 

Typedefs

using Direction = Simplex::Direction
 

Functions

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

Variables

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

Typedef Documentation

◆ Direction

Definition at line 33 of file Simplex.cpp.

Function Documentation

◆ isRangeDivisibleBy()

static bool isRangeDivisibleBy ( ArrayRef< DynamicAPInt >  range,
const DynamicAPInt &  divisor 
)
static

Definition at line 372 of file Simplex.cpp.

◆ scaleAndAddForAssert()

static LLVM_ATTRIBUTE_UNUSED SmallVector<DynamicAPInt, 8> scaleAndAddForAssert ( ArrayRef< DynamicAPInt >  a,
const DynamicAPInt &  scale,
ArrayRef< DynamicAPInt >  b 
)
static

Definition at line 40 of file Simplex.cpp.

Variable Documentation

◆ nullIndex

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