This is an archive of the discontinued LLVM Phabricator instance.

[X86] Add inst fixup for `unpckps` -> `unpckdq`.
ClosedPublic

Authored by goldstein.w.n on Apr 6 2023, 11:12 AM.

Details

Summary

unpckps has the same performance as unpckpd (only port5) wereas
unpckdq can run on p15 on some newer architectures.

unpckdq is in the integer domain, so only do the transform if the
target has no bypass delay on shuffles (SKL+).

Diff Detail

Event Timeline

goldstein.w.n created this revision.Apr 6 2023, 11:12 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 6 2023, 11:12 AM
goldstein.w.n requested review of this revision.Apr 6 2023, 11:12 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 6 2023, 11:12 AM

Remove shufps option

goldstein.w.n retitled this revision from [X86] Add inst fixup for `unpckps` -> `unpckdq`/`shufps`. to [X86] Add inst fixup for `unpckps` -> `unpckdq`..Apr 6 2023, 11:22 AM
goldstein.w.n edited the summary of this revision. (Show Details)
goldstein.w.n added reviewers: pengfei, RKSimon.
RKSimon accepted this revision.Apr 6 2023, 1:21 PM

LGTM

This revision is now accepted and ready to land.Apr 6 2023, 1:21 PM
goldstein.w.n edited the summary of this revision. (Show Details)

Rebase

Update comments

This revision was landed with ongoing or failed builds.Apr 9 2023, 10:17 PM
This revision was automatically updated to reflect the committed changes.