llvm-project/mlir/tools/mlir-tblgen
River Riddle 621d7cca37 [mlir] Add a new BranchOpInterface to allow for opaquely interfacing with branching terminator operations.
This interface contains the necessary components to provide the same builtin behavior that terminators have. This will be used in future revisions to remove many of the hardcoded constraints placed on successors and successor operands. The interface initially contains three methods:

```c++
// Return a set of values corresponding to the operands for successor 'index', or None if the operands do not correspond to materialized values.
Optional<OperandRange> getSuccessorOperands(unsigned index);

// Return true if this terminator can have it's successor operands erased.
bool canEraseSuccessorOperand();

// Erase the operand of a successor. This is only valid to call if 'canEraseSuccessorOperand' returns true.
void eraseSuccessorOperand(unsigned succIdx, unsigned opIdx);
```

Differential Revision: https://reviews.llvm.org/D75314
2020-03-05 12:50:35 -08:00
..
CMakeLists.txt [mlir] Add initial support for parsing a declarative operation assembly format 2020-01-30 11:43:40 -08:00
DocGenUtilities.h Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
EnumsGen.cpp [mlir] EnumsGen: dissociate string form of integer enum from C++ symbol name 2020-01-30 17:04:00 +01:00
LLVMIRConversionGen.cpp [mlir] LLVM dialect: Generate conversions between EnumAttrCase and LLVM API 2020-01-30 21:54:56 +01:00
LLVMIRIntrinsicGen.cpp [mlir] Intrinsics generator: use TableGen-defined builder function 2020-02-25 11:59:04 +01:00
OpDefinitionsGen.cpp [mlir] Add a new BranchOpInterface to allow for opaquely interfacing with branching terminator operations. 2020-03-05 12:50:35 -08:00
OpDocGen.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
OpFormatGen.cpp [mlir][DeclarativeParser][NFC] Use explicit type names in TypeSwitch to 2020-02-21 16:14:13 -08:00
OpFormatGen.h [mlir] Add initial support for parsing a declarative operation assembly format 2020-01-30 11:43:40 -08:00
OpInterfacesGen.cpp [mlir] Allow adding extra class declarations to interfaces. 2020-02-15 23:54:42 -08:00
ReferenceImplGen.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
RewriterGen.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
SPIRVUtilsGen.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
StructsGen.cpp Support OptionalAttr inside a StructAttr 2020-02-19 12:47:04 +00:00
mlir-tblgen.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00