This moves the last custom x86 USUBSAT fold to generic DAGCombine.
Completes PR40111
Paths
| Differential D96703
[DAG] foldSubToUSubSat - fold sub(a,trunc(umin(zext(a),b))) -> usubsat(a,trunc(umin(b,SatLimit))) ClosedPublic Authored by RKSimon on Feb 15 2021, 4:33 AM.
Details Summary This moves the last custom x86 USUBSAT fold to generic DAGCombine. Completes PR40111
Diff Detail
Event TimelineHerald added subscribers: ecnelises, steven.zhang, hiraditya. · View Herald TranscriptFeb 15 2021, 4:33 AM
This revision is now accepted and ready to land.Feb 19 2021, 10:06 AM RKSimon retitled this revision from [DAG] foldSubToUSubSat - fold sub(a,trunc(umin(zext(a),b))) -> usubsat(a,trunc(umin(b,c))) to [DAG] foldSubToUSubSat - fold sub(a,trunc(umin(zext(a),b))) -> usubsat(a,trunc(umin(b,SatLimit))).Feb 19 2021, 10:39 AM This revision was landed with ongoing or failed builds.Feb 20 2021, 4:02 AM Closed by commit rG761bbed264f7: [DAG] foldSubToUSubSat - fold sub(a,trunc(umin(zext(a),b))) -> usubsat(a,trunc… (authored by RKSimon). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 325187 llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/psubus.ll
|
Is this always a truncate and never a ZExt?