Page MenuHomePhabricator

[x86] add load fold patterns for movddup with vzext_load

Authored by spatel on Dec 20 2018, 9:17 AM.



The missed load folding noticed in D55898 is visible independent of that change either with an adjusted IR pattern to start or with AVX2 (where the build vector becomes a broadcast first; movddup is not produced until we get into isel via tablegen patterns).

Diff Detail


Event Timeline

spatel created this revision.Dec 20 2018, 9:17 AM

Does AVX512 avoid this somehow or do we need these patterns there too?

spatel updated this revision to Diff 179292.Dec 21 2018, 8:20 AM

Patch updated:
Add pattern for AVX512VL. I moved the dedicated test for this bug (rL349920), so we'd have a single file with the relevant RUN lines without adding a bunch of noise.

RKSimon accepted this revision.Dec 21 2018, 8:58 AM

LGTM - thanks.

This revision is now accepted and ready to land.Dec 21 2018, 8:58 AM
This revision was automatically updated to reflect the committed changes.