summaryrefslogtreecommitdiffstats
path: root/mlir/lib/TableGen/OpTrait.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Adjust License.txt file to use the LLVM licenseMehdi Amini2019-12-231-13/+4
| | | | PiperOrigin-RevId: 286906740
* Enable autogenerating OpInterface method declarationsJacques Pienaar2019-09-301-7/+23
| | | | | | | | | | Add DeclareOpInterfaceFunctions to enable specifying whether OpInterfaceMethods for an OpInterface should be generated automatically. This avoids needing to declare the extra methods, while also allowing adding function declaration by way of trait/inheritance. Most of this change is mechanical/extracting classes to be reusable. PiperOrigin-RevId: 272042739
* Remove extra `;` after function definition (NFC)Mehdi Amini2019-05-101-1/+1
| | | | | | | | Fix a GCC warning -- PiperOrigin-RevId: 247670176
* [TableGen] Refine OpTrait classes and defs to be consistentLei Zhang2019-05-061-3/+3
| | | | | | -- PiperOrigin-RevId: 245075421
* Add a trait to set the result type by attributeFeng Liu2019-03-291-0/+6
| | | | | | | | | Before this CL, the result type of the pattern match results need to be as same as the first operand type, operand broadcast type or a generic tensor type. This CL adds a new trait to set the result type by attribute. For example, the TFL_ConstOp can use this to set the output type to its value attribute. PiperOrigin-RevId: 240441249
* Create OpTrait base class & allow operation predicate OpTraits.Jacques Pienaar2019-03-291-0/+53
* Introduce a OpTrait class in C++ to wrap the TableGen definition; * Introduce PredOpTrait and rename previous usage of OpTrait to NativeOpTrait; * PredOpTrait allows specifying a trait of the operation by way of predicate on the operation. This will be used in future to create reusable set of trait building blocks in the definition of operations. E.g., indicating whether to operands have the same type and allowing locally documenting op requirements by trait composition. - Some of these building blocks could later evolve into known fixed set as LLVMs backends do, but that can be considered with more data. * Use the modelling to address one verify TODO in a very local manner. This subsumes the current custom verify specification which will be removed in a separate mechanical CL. PiperOrigin-RevId: 234827169
OpenPOWER on IntegriCloud