Teach RaiseControlFlow to handle IfOp's with partially infered shapes,
authorChris Lattner <clattner@google.com>
Fri, 7 Sep 2018 00:31:21 +0000 (17:31 -0700)
committerjpienaar <jpienaar@google.com>
Fri, 29 Mar 2019 20:10:24 +0000 (13:10 -0700)
commitb18c770d90e1a218dd93fbba37f4ec528773c973
tree5496b7252b137756d0f5f88210333ba7a7b5e670
parent5f11f6840555407bf018c3bce379aa6b8de36e8b
Teach RaiseControlFlow to handle IfOp's with partially infered shapes,
inserting shape_casts as necessary.

Along the way:
 - Add some missing accessors to the AtLeastNOperands trait.
 - Implement shape_cast / ShapeCastOp standard op.
 - Improve handling of errors in mlir-opt, making it easier to understand
   errors when invalid IR is rejected by the verifier.

PiperOrigin-RevId: 211897877
mlir/include/mlir/IR/OpDefinition.h
mlir/include/mlir/IR/StandardOps.h
mlir/include/mlir/IR/Types.h
mlir/lib/IR/StandardOps.cpp
mlir/tools/mlir-opt/mlir-opt.cpp