summaryrefslogtreecommitdiffstats
path: root/mlir/unittests/Dialect
Commit message (Collapse)AuthorAgeFilesLines
* Adjust License.txt file to use the LLVM licenseMehdi Amini2019-12-234-52/+16
| | | | PiperOrigin-RevId: 286906740
* Fix minor spelling tweaks (NFC)Kazuaki Ishizaki2019-10-201-1/+1
| | | | | | Closes tensorflow/mlir#175 PiperOrigin-RevId: 275726876
* NFC: Remove trivial builder get methods.River Riddle2019-10-171-1/+1
| | | | | | These don't add any value, and some are even more restrictive than the respective static 'get' method. PiperOrigin-RevId: 275391240
* Handle OpMemberName instruction in SPIR-V deserializer.Mahesh Ravishankar2019-09-231-4/+72
| | | | | | | | | | Sdd support in deserializer for OpMemberName instruction. For now the name is just processed and not associated with the spirv::StructType being built. That needs an enhancement to spirv::StructTypes itself. Add tests to check for errors reported during deserialization with some refactoring to common out some utility functions. PiperOrigin-RevId: 270794524
* Refactor DiagnosticEngine to support multiple registered diagnostic handlers.River Riddle2019-09-231-1/+1
| | | | | | | | | | | | This fixes a problem with current save-restore pattern of diagnostics handlers, as there may be a thread race between when the previous handler is destroyed. For example, this occurs when using multiple ParallelDiagnosticHandlers asynchronously: Handler A Handler B | - LifeTime - | Restore A here. Handler C | --- LifeTime ---| Restore B after it has been destroyed. The new design allows for multiple handlers to be registered in a stack like fashion. Handlers can return success() to signal that they have fully processed a diagnostic, or failure to propagate otherwise. PiperOrigin-RevId: 270720625
* NFC: Pass OperationState by reference instead of by pointer.River Riddle2019-09-201-1/+1
| | | | | | MLIR follows the LLVM convention of passing by reference instead of by pointer. PiperOrigin-RevId: 270396945
* [spirv] Fix the entry block to start with OpLabelLei Zhang2019-08-271-5/+29
| | | | | | | | Each basic block in SPIR-V must start with an OpLabel instruction. We don't support control flow yet, so this CL just makes sure that the entry block follows this rule and is valid. PiperOrigin-RevId: 265718841
* [spirv] Add Block decoration for spv.struct.Denis Khalikov2019-08-272-0/+127
| | | | | | | | Add Block decoration for top-level spv.struct. Closes tensorflow/mlir#102 PiperOrigin-RevId: 265716241
* [spirv] Add basic infrastructure for negative deserializer testsLei Zhang2019-07-303-0/+213
| | | | | | | | | | | | | We are relying on serializer to construct positive cases to drive the test for deserializer. This leaves negative cases untested. This CL adds a basic test fixture for covering the negative corner cases to enforce a more robust deserializer. Refactored common SPIR-V building methods out of serializer to share it with the deserialization test. PiperOrigin-RevId: 260742733
* Simplify usages of SplatElementsAttr now that it inherits from ↵River Riddle2019-06-191-1/+1
| | | | | | DenseElementsAttr. PiperOrigin-RevId: 253910543
* Refactor SplatElementsAttr to inherit from DenseElementsAttr as opposed to ↵River Riddle2019-06-191-1/+1
| | | | | | being a separate Attribute type. DenseElementsAttr provides a better internal representation for splat values as well as better API for accessing elements. PiperOrigin-RevId: 253138287
* Remove the explicit attribute kinds for DenseIntElementsAttr and ↵River Riddle2019-06-091-1/+1
| | | | | | DenseFPElementsAttr in favor of just one DenseElementsAttr. Now that attribute has the ability to define 'classof(Attribute attr)' methods, these derived classes can just be specializations of the main attribute class. PiperOrigin-RevId: 251948820
* Rename VectorOrTensorType to ShapedTypeGeoffrey Martin-Noble2019-05-201-2/+2
| | | | | | | | | | | | This is in preparation for making it also support/be a parent class of MemRefType. MemRefs have similar shape/rank/element semantics and it would be useful to be able to use these same utilities for them. This CL should not change any semantics and only change variables, types, string literals, and comments. In follow-up CLs I will prepare all callers to handle MemRef types or remove their dependence on ShapedType. Discussion/Rationale in https://groups.google.com/a/tensorflow.org/forum/#!topic/mlir/cHLoyfGu8y8 -- PiperOrigin-RevId: 248476449
* Move Quantization -> Dialect/QuantOps, FxpMathOps -> Dialect/FxpMathOps.Stella Laurenzo2019-05-201-0/+173
| | | | | | | | | | | | | Adding the additional layer of directory was discussed offline and matches the Target/ tree. The names match the defacto convention we seem to be following where the C++ namespace is ^(.+)Ops/$ matched against the directory name. This is in preparation for patching the Quantizer into this tree, which would have been confusing without moving the Quantization dialect to its more proper home. It is left to others to move other dialects if desired. Tested: ninja check-mlir -- PiperOrigin-RevId: 248171982
* Add build files and update README.Jacques Pienaar2019-03-301-0/+7
| | | | | | | | | * Add initial version of build files; * Update README with instructions to download and build MLIR from github; -- PiperOrigin-RevId: 241102092
* Change getBroadcastedShape() to return result shape via parameterLei Zhang2019-03-291-24/+30
| | | | | | This is a more efficient way than returning SmallVector directly. PiperOrigin-RevId: 239407024
* Pull shape broadcast out as a stand-alone utility functionLei Zhang2019-03-291-0/+74
So that we can use this function to deduce broadcasted shapes elsewhere. Also added support for unknown dimensions, by following TensorFlow behavior. PiperOrigin-RevId: 237846065
OpenPOWER on IntegriCloud