We established the (unfortunately complicated) rules for UB/poison propagation with vector ops in: D48893 D48987 D49047 It's clear from the affected tests that we are potentially creating poison where none existed before the transforms. For add/sub/mul, the answer is simple: just drop the flags because the extra undef vector lanes are generally more valuable for analysis and codegen. llvm-svn: 343819 |
||
|---|---|---|
| .. | ||
| X86FsubCmpCombine.ll | ||
| blend_x86.ll | ||
| clmulqdq.ll | ||
| lit.local.cfg | ||
| pr2645-1.ll | ||
| shufflemask-undef.ll | ||
| x86-adds-subs.ll | ||
| x86-avx.ll | ||
| x86-avx2.ll | ||
| x86-avx512.ll | ||
| x86-bmi-tbm.ll | ||
| x86-crc32-demanded.ll | ||
| x86-f16c.ll | ||
| x86-fma.ll | ||
| x86-insertps.ll | ||
| x86-masked-memops.ll | ||
| x86-movmsk.ll | ||
| x86-muldq.ll | ||
| x86-pack.ll | ||
| x86-pshufb.ll | ||
| x86-sse.ll | ||
| x86-sse2.ll | ||
| x86-sse4a.ll | ||
| x86-sse41.ll | ||
| x86-vec_demanded_elts.ll | ||
| x86-vector-shifts.ll | ||
| x86-vpermil.ll | ||
| x86-xop.ll | ||