HomePhabricator

[X86] Move avx512 code that forces zeros to the false side of vselects above a…

Authored by craig.topper on Feb 17 2020, 9:32 PM.

Description

[X86] Move avx512 code that forces zeros to the false side of vselects above a check for legal types.

This helps this transform occur earlier so we can fold the not
with setcc. If we delay it until after type legalization we might
have introduced instructions to widen the mask if the vselect was
widened. This can prevent the not from making it to the setcc.

We could of course add more DAG combines to handle that, but
moving this earlier is easier.

Details

Committed
craig.topperFeb 17 2020, 10:24 PM
Parents
rGa807a068e6ae: [analyzer] Teach scan-build how to rebuild index.html without analyzing.
Branches
Unknown
Tags
Unknown