HomePhabricator

[X86][AVX] combineSignExtendInReg - promote mask arithmetic before v4i64…

Authored by RKSimon on May 7 2020, 4:28 AM.

Description

[X86][AVX] combineSignExtendInReg - promote mask arithmetic before v4i64 canonicalization

We rely on the combine

(sext_in_reg (v4i64 a/sext (v4i32 x)), v4i1) -> (v4i64 sext (v4i32 sext_in_reg (v4i32 x, ExtraVT)))

to avoid complex v4i64 ashr codegen, but doing so prevents v4i64 comparison mask promotion, so ensure we attempt to promote before canonicalizing the (hopefully now redundant sext_in_reg).

Helps with the poor codegen in PR45808.

Details

Committed
RKSimonMay 7 2020, 5:16 AM
Parents
rG751da4d596ea: [NFC][AArch64] Add test
Branches
Unknown
Tags
Unknown