llvm-project
f9a0b5dc - [LoongArch] Custom lowering for LSX vector sign extensions (#194325)

Commit
10 hours ago
[LoongArch] Custom lowering for LSX vector sign extensions (#194325) Custom LSX sign-extensions to combinations of `SLTI` + `VILVL` + `VILVH` if possible. For example, we could lower vector sext to following instructions: ``` %B = sext <4 x i16> %A to <4 x i32> vslti.h v2, v1, 0 vilvl.h v1, v2, v1 %B = sext <4 x i32> %A to <4 x i64> vslti.w v3, v1, 0 vilvh.w v2, v3, v1 vilvl.w v1, v3, v1 ``` When these combinations is worse than convert sext to shuffle, we simply use the latter one instead.
Author
Parents
Loading