[mlir][emitc] Add a cast op
authorMarius Brehler <marius.brehler@iml.fraunhofer.de>
Mon, 11 Apr 2022 14:14:51 +0000 (14:14 +0000)
committerMarius Brehler <marius.brehler@iml.fraunhofer.de>
Thu, 28 Apr 2022 15:50:59 +0000 (15:50 +0000)
commit84fe39a45b7340d468378f58836c8559fda3959b
treef3cd4c80c4fba13dcc44a860a936879ccdcd5786
parent0d70bc990bc4b3c90bedd17b6d5b80e35d147524
[mlir][emitc] Add a cast op

This adds a cast operation that allows to perform an explicit type
conversion. The cast op is emitted as a C-style cast. It can be applied
to integer, float, index and EmitC types.

Reviewed By: jpienaar

Differential Revision: https://reviews.llvm.org/D123514
mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
mlir/lib/Dialect/EmitC/IR/CMakeLists.txt
mlir/lib/Dialect/EmitC/IR/EmitC.cpp
mlir/lib/Target/Cpp/TranslateToCpp.cpp
mlir/test/Dialect/EmitC/invalid_ops.mlir
mlir/test/Dialect/EmitC/ops.mlir
mlir/test/Target/Cpp/cast.mlir [new file with mode: 0644]