This is an archive of the discontinued LLVM Phabricator instance.

[X86] Make the MUL->VPMADDWD work before op legalization on AVX1 targets. Simplify feature checks by using isTypeLegal.
ClosedPublic

Authored by craig.topper on Mar 6 2018, 11:33 PM.

Details

Summary

The v8i32 conversion on AVX1 targets was only working after LowerMUL splits 256-bit vectors.

While I was there I've also made it so we don't have to check for AVX2 and BWI directly and instead just ask if the type is legal. I really want to minimize the number of places we have to check useBWIRegs().

Diff Detail

Repository
rL LLVM

Event Timeline

craig.topper created this revision.Mar 6 2018, 11:33 PM
RKSimon accepted this revision.Mar 7 2018, 4:20 AM

LGTM thanks - is it worth adding AVX512F/AVX512BW/KNL test cases to shrink_vmul.ll ?

This revision is now accepted and ready to land.Mar 7 2018, 4:20 AM
This revision was automatically updated to reflect the committed changes.