[FEnv] File with properties of constrained intrinsics
authorSerge Pavlov <sepavloff@gmail.com>
Tue, 5 Nov 2019 13:42:16 +0000 (20:42 +0700)
committerSerge Pavlov <sepavloff@gmail.com>
Wed, 20 Nov 2019 06:30:07 +0000 (13:30 +0700)
commit0c50c0b0552edf9f375a32eea5e4d254dc4c7e5c
treef17e1fe255a55fbde47215ae7752aa8fd1011af1
parentf3225f2abe78d8a25ee5deea4265b447e7b7d5ee
[FEnv] File with properties of constrained intrinsics

Summary
In several places we need to enumerate all constrained intrinsics or IR
nodes that should be represented by them. It is easy to miss some of
the cases. To make working with these intrinsics more convenient and
robust, this change introduces file containing definitions of all
constrained intrinsics and some of their properties. This file can be
included to generate constrained intrinsics processing code.

Reviewers: kpn, andrew.w.kaylor, cameron.mcinally, uweigand

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D69887
12 files changed:
llvm/docs/AddingConstrainedIntrinsics.rst
llvm/include/llvm/CodeGen/SelectionDAGNodes.h
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/include/llvm/IR/ConstrainedOps.def [new file with mode: 0644]
llvm/include/llvm/IR/IntrinsicInst.h
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
llvm/lib/CodeGen/TargetLoweringBase.cpp
llvm/lib/IR/IntrinsicInst.cpp
llvm/lib/IR/Verifier.cpp