[MLIR] Added llvm.freeze
authorSagar Jain <cs17btech11034@iith.ac.in>
Mon, 2 Mar 2020 09:19:57 +0000 (10:19 +0100)
committerAlex Zinenko <zinenko@google.com>
Mon, 2 Mar 2020 09:24:01 +0000 (10:24 +0100)
commitd85821dfa623b43b95dda1af3b80e11902d3994f
tree1d55fe0cfa69620a64919cfc150a9ba87e339522
parent8c7c32b4c977339c1f2fad7e4c9545a9e3ec5e79
[MLIR] Added llvm.freeze

This patch adds llvm.freeze & processes undef constants from LLVM IR.

Syntax:
LLVM IR
`<result> = freeze ty <val>`

MLIR LLVM Dialect:
`llvm.freeze val attr-dict : type`

Example:
LLVM IR: `%3 = freeze i32 5`
MLIR: `%6 = llvm.freeze %5 : !llvm.i32`

Differential Revision: https://reviews.llvm.org/D75329
mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
mlir/test/Dialect/LLVMIR/roundtrip.mlir
mlir/test/Target/import.ll
mlir/test/Target/llvmir.mlir