Add "SkipDead" parameter to TargetInstrInfo::DefinesPredicate
authorNicholas Guy <nicholas.guy@arm.com>
Mon, 28 Sep 2020 15:49:41 +0000 (16:49 +0100)
committerNicholas Guy <nicholas.guy@arm.com>
Wed, 21 Oct 2020 10:52:47 +0000 (11:52 +0100)
commit9a2d2bedb73058f22f4fea30fec14df8281638f5
tree31d2845c55a9f37e947d2024d8b78f9925d2ae47
parentbfc961aeb2d0e5a05bca7a894cbc4370f5e79a6a
Add "SkipDead" parameter to TargetInstrInfo::DefinesPredicate

Some instructions may be removable through processes such as IfConversion,
however DefinesPredicate can not be made aware of when this should be considered.
This parameter allows DefinesPredicate to distinguish these removable instructions
on a per-call basis, allowing for more fine-grained control from processes like
ifConversion.

Renames DefinesPredicate to ClobbersPredicate, to better reflect it's purpose

Differential Revision: https://reviews.llvm.org/D88494
llvm/include/llvm/CodeGen/TargetInstrInfo.h
llvm/lib/CodeGen/IfConversion.cpp
llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
llvm/lib/Target/AMDGPU/R600InstrInfo.h
llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
llvm/lib/Target/ARM/ARMBaseInstrInfo.h
llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
llvm/lib/Target/Hexagon/HexagonInstrInfo.h
llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
llvm/lib/Target/PowerPC/PPCInstrInfo.h