This is an archive of the discontinued LLVM Phabricator instance.

[DAGCombiner] Change foldAndOrOfSETCC() to optimize and/or patterns with floating points.
ClosedPublic

Authored by kmitropoulou on Aug 30 2023, 4:39 PM.

Diff Detail

Event Timeline

kmitropoulou created this revision.Aug 30 2023, 4:39 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 30 2023, 4:39 PM
kmitropoulou requested review of this revision.Aug 30 2023, 4:39 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 30 2023, 4:39 PM
kmitropoulou added a comment.EditedAug 30 2023, 4:44 PM

This patch was reverted because of some failures in AArch64. The failures were due to the fact that FMINNUM_IEEE and FMAXNUM_IEEE are not supported in AArch64. I fixed the problem and I added AArch64/combine_andor_with_cmps.ll that tests both FMINNUM/FMAXNUM and FMINNUM_IEEE/FMAXNUM_IEEE.

brooksmoses accepted this revision.Aug 30 2023, 5:08 PM

Thanks for the fix! I believe that this should address the problem we had with the prior version of the patch.

This revision is now accepted and ready to land.Aug 30 2023, 5:08 PM

Updating D159240: [DAGCombiner] Change foldAndOrOfSETCC() to optimize and/or patterns with floating points.

Rebasing D159240: [DAGCombiner] Change foldAndOrOfSETCC() to optimize and/or patterns with floating points.

This revision was landed with ongoing or failed builds.Aug 31 2023, 11:37 AM
This revision was automatically updated to reflect the committed changes.
llvm/test/CodeGen/AArch64/combine_andor_with_cmps.ll