AVX512: fix mask handling for gather/scatter/prefetch , bug 26338
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Target/X86/X86ISelLowering.cpp | ||
---|---|---|
16486 ↗ | (On Diff #46491) | Why do you need all-ones and all-zeroes. If the mask is all-zero you don't need any scatter. What happens if the mask is a constant - a mix ones and zeroes? |
lib/Target/X86/X86ISelLowering.cpp | ||
---|---|---|
16486 ↗ | (On Diff #46491) | in general convert const to mask using gpr - for example movw $220, %ax kmovw %eax, %k1 in all zero use kxorw kxorw %k0, %k0, %k1 in all-ones kxnorw %k0, %k0, %k1 i agree that in case all-zero mask, instruction has no affect and can be removed at all, but this case not handled for any intrinsic. |