Can be used to implement target‐specific instruction combining.
Synopsis
Declared in <llvm/Analysis/TargetTransformInfo.h>
std::optional<Value*>
simplifyDemandedVectorEltsIntrinsic(
InstCombiner& IC,
IntrinsicInst& II,
APInt DemandedElts,
APInt& UndefElts,
APInt& UndefElts2,
APInt& UndefElts3,
std::function<void(Instruction*, unsigned int, APInt, APInt&)> SimplifyAndSetOp) const;
Return Value
The simplified value, or std::nullopt if unchanged.
Parameters
Name |
Description |
IC |
InstCombiner invoking this hook. |
II |
Target‐specific intrinsic to simplify. |
DemandedElts |
Demanded vector elements of the result. |
UndefElts |
Elements known undef in the result. |
UndefElts2 |
Elements known undef in a second operand. |
UndefElts3 |
Elements known undef in a third operand. |
SimplifyAndSetOp |
Callback to simplify and replace an operand. |
See Also
instCombineIntrinsic
Created with MrDocs