[all-commits] [llvm/llvm-project] 8757ce: [PowerPC] Replace PPCISD::VABSD cases with generic...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Sat Feb 25 12:17:37 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8757ce490130c2b2862017ab705a9ff24b10033b
https://github.com/llvm/llvm-project/commit/8757ce490130c2b2862017ab705a9ff24b10033b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2023-02-25 (Sat, 25 Feb 2023)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCInstrVSX.td
Log Message:
-----------
[PowerPC] Replace PPCISD::VABSD cases with generic ISD::ABDU(X,Y) node
A move towards using the generic ISD::ABDU nodes on more backends
Also support ISD::ABDS for v4i32 types using the existing signbit flip trick
PowerPC has a select(icmp_ugt(x,y),sub(x,y),sub(y,x)) -> abdu(x,y) combine that I intend to move to DAGCombiner in a future patch.
The ABS(SUB(X,Y)) -> PPCISD::VABSD(X,Y,1) v4i32 combine wasn't legal (https://alive2.llvm.org/ce/z/jc2hLU) - so I've removed it, having already added the legal sub nsw tests equivalent.
Differential Revision: https://reviews.llvm.org/D142313
More information about the All-commits
mailing list