Displaying 3 results from an estimated 3 matches for "usereductionintrinsic".
2017 Aug 04
2
Status of llvm.experimental.vector.reduce.* intrinsics
...bly proven themselves to be stable. However the error you're
> seeing is because the AArch64 backend still expects to deal with only
> intrinsics it can *natively* support, and i1 is not a natively supported
> type for reductions. See the code in
> AArch64TargetTransformInfo.cpp:useReductionIntrinsic() for where we
> decide which reduction types we can support.
>
> For these cases, we need to implement more generic legalization support
> in order to either promote to a legal type, or in cases where the target
> cannot support it as a native operation at all, to expand it to a...
2017 Aug 04
3
Status of llvm.experimental.vector.reduce.* intrinsics
...> you're
> > seeing is because the AArch64 backend still expects to deal with only
> > intrinsics it can *natively* support, and i1 is not a natively
> supported
> > type for reductions. See the code in
> > AArch64TargetTransformInfo.cpp:useReductionIntrinsic() for where we
> > decide which reduction types we can support.
> >
> > For these cases, we need to implement more generic legalization
> support
> > in order to either promote to a legal type, or in cases where the
> target
> > c...
2017 Jan 31
2
RFC: Generic IR reductions
...that are exposed by other targets.
Transitional API
================
To support both the old-style tree reduction patterns and the new intrinsics for clients, we can use a generalization of the TTI call we introduce in our SVE patches.
We could provide something like:
bool TargetTransformInfo::useReductionIntrinsic(unsigned Opcode, Type *Ty,
bool IsMaxOp, bool IsSigned,
bool NoNaN)
In the prototype patch, I've created two separate ways to generate reductions from an IR generator's perspective, depending on...