This is an archive of the discontinued LLVM Phabricator instance.

[DAG] Add visitABD optimizations
ClosedPublic

Authored by dmgreen on Feb 2 2023, 8:34 AM.

Details

Summary

This adds basic a visitABD to optimize ABDS and ABDU nodes, similar to the existing visitAVG method.

The fold I was initially interested in was folding shuffles though the binop. This also:

Diff Detail

Event Timeline

dmgreen created this revision.Feb 2 2023, 8:34 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 2 2023, 8:34 AM
dmgreen requested review of this revision.Feb 2 2023, 8:34 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 2 2023, 8:34 AM

Add reassociation folds as well?

RKSimon accepted this revision.Feb 4 2023, 10:10 AM

LGTM - re-association combines might still be useful though

This revision is now accepted and ready to land.Feb 4 2023, 10:10 AM
dmgreen updated this revision to Diff 494842.Feb 4 2023, 10:22 AM

I was just updating it now :)

This adds reassociation, and also moves the lowering of NEON ABD intrinsics from lowering to a combine so that they can happen earlier which makes testing easier.

RKSimon accepted this revision.Feb 4 2023, 10:27 AM

LGTM - cheers :)

This revision was landed with ongoing or failed builds.Feb 5 2023, 2:29 AM
This revision was automatically updated to reflect the committed changes.