|
MLIR 22.0.0git
|
#include <optional>#include <utility>#include "mlir/Dialect/SPIRV/IR/SPIRVOps.h"#include "mlir/Dialect/CommonFolders.h"#include "mlir/Dialect/SPIRV/IR/SPIRVTypes.h"#include "mlir/Dialect/UB/IR/UBOps.h"#include "mlir/IR/Matchers.h"#include "mlir/IR/PatternMatch.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallVectorExtras.h"#include "SPIRVCanonicalization.inc"Go to the source code of this file.
Classes | |
| struct | IAddCarryFold |
| struct | MulExtendedFold< MulOp, IsSigned > |
| struct | UMulExtendedOpXOne |
| struct | UModSimplification |
Typedefs | |
| using | SMulExtendedOpFold = MulExtendedFold<spirv::SMulExtendedOp, true> |
| using | UMulExtendedOpFold = MulExtendedFold<spirv::UMulExtendedOp, false> |
Functions | |
| static std::optional< bool > | getScalarOrSplatBoolAttr (Attribute attr) |
| Returns the boolean value under the hood if the given boolAttr is a scalar or splat vector bool constant. | |
| static Attribute | extractCompositeElement (Attribute composite, ArrayRef< unsigned > indices) |
| static bool | isDivZeroOrOverflow (const APInt &a, const APInt &b) |
| using SMulExtendedOpFold = MulExtendedFold<spirv::SMulExtendedOp, true> |
Definition at line 280 of file SPIRVCanonicalization.cpp.
| using UMulExtendedOpFold = MulExtendedFold<spirv::UMulExtendedOp, false> |
Definition at line 309 of file SPIRVCanonicalization.cpp.
Definition at line 48 of file SPIRVCanonicalization.cpp.
References extractCompositeElement(), and indices.
Referenced by extractCompositeElement().
Returns the boolean value under the hood if the given boolAttr is a scalar or splat vector bool constant.
Definition at line 34 of file SPIRVCanonicalization.cpp.
|
static |
Definition at line 71 of file SPIRVCanonicalization.cpp.
References b.