This is an archive of the discontinued LLVM Phabricator instance.

[AArch64][GlobalISel] Legalize scalar G_FMAXIMUM + G_FMINIMUM
ClosedPublic

Authored by paquette on Dec 8 2021, 12:03 PM.

Details

Summary

Necessary for implementing some combines on floating point selects.

Diff Detail

Event Timeline

paquette created this revision.Dec 8 2021, 12:03 PM
paquette requested review of this revision.Dec 8 2021, 12:03 PM
Herald added a project: Restricted Project. · View Herald TranscriptDec 8 2021, 12:03 PM
jroelofs added inline comments.Dec 8 2021, 12:14 PM
llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaximum.mir
81

should there be a test for s128?

paquette added inline comments.Dec 8 2021, 12:19 PM
llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaximum.mir
81

oh this should probably just use minScalar actually...

paquette updated this revision to Diff 392870.Dec 8 2021, 12:20 PM
  • Use minScalar so we don't have to think about s128
  • Update the legalizer-info-validation test I always forget to update
jroelofs added inline comments.Dec 8 2021, 12:22 PM
llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
783

Is it worthwhile to combine with this one, now that their legalization rules match, or do you expect they might diverge later?

783

erm, never mind, they don't

This revision is now accepted and ready to land.Dec 8 2021, 12:23 PM
This revision was landed with ongoing or failed builds.Dec 9 2021, 11:57 AM
This revision was automatically updated to reflect the committed changes.