[mlir] Fix LLVM intrinsic convesion generator for overloadable types.
authorMarcello Maggioni <hayarms@gmail.com>
Sat, 18 Jan 2020 03:26:46 +0000 (19:26 -0800)
committerMarcello Maggioni <hayarms@gmail.com>
Tue, 21 Jan 2020 19:52:30 +0000 (11:52 -0800)
commitcbf08d0f5751696d7ada90644eebfbef6df7a3ae
tree783f6ddf19a5ae9b30aed587607e1be3a44c559a
parent2d77e0b9f22a084c9a0664f74dad5b4f3c62e928
[mlir] Fix LLVM intrinsic convesion generator for overloadable types.

Summary:
If an intrinsic has overloadable types like llvm_anyint_ty or
llvm_anyfloat_ty then to getDeclaration() we need to pass a list
of the types that are "undefined" essentially concretizing them.

This patch add support for deriving such types from the MLIR op
that has been matched.

Reviewers: andydavis1, ftynse, nicolasvasilache, antiagainst

Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, arpith-jacob, mgester, lucyrfox, liufengdb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D72974
mlir/test/mlir-tblgen/llvm-intrinsics.td
mlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp