summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp
diff options
context:
space:
mode:
authorPaul Walker <paul.walker@arm.com>2019-12-19 13:34:37 +0000
committerPaul Walker <paul.walker@arm.com>2019-12-20 14:22:27 +0000
commit6cba90dc4de6427817bad763f018a502a9048f74 (patch)
tree06ece2941902821facbb306ae37d187abacdeff7 /llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp
parent05c3b36bc9a35a8aa3ddd6a912ddceab90c39b4d (diff)
downloadbcm5719-llvm-6cba90dc4de6427817bad763f018a502a9048f74.tar.gz
bcm5719-llvm-6cba90dc4de6427817bad763f018a502a9048f74.zip
[AArch64][SVE] Correct intrinsics and patterns for logical predicate instructions
In general SVE intrinsics are considered predicated and merging with everything else having suitable decoration. For predicated zeroing operations (like the predicate logical instructions) we use the "_z" suffix. After this change all intrinsics use their expected names (i.e. orr instead of or and eor instead of xor). I've removed intrinsics and patterns for condition code setting instructions as that data is not returned as part of the intrinsic. The expectation is to ask for a cc flag explicitly. For example: a = and_z(pg, p1, p2) cc = ptest_<flag>(pg, a) With the code generator expected to use "s" variants of instructions when available. Differential Revision: https://reviews.llvm.org/D71715
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud