在 2025/2/11 下午4:37, Xi Ruoyao 写道:
On Tue, 2025-02-11 at 15:48 +0800, Lulu Cheng wrote:
Hi,

   I think , the "{lsx_,lasx_x}hv{add,sub}w" in the title should be
"{lsx_,lasx_x}vh{add,sub}w".
Indeed.

在 2025/2/7 下午8:09, Xi Ruoyao 写道:
Like what we've done for {lsx_,lasx_x}v{add,sub,mul}l{ev,od}, use
special predicates and TImode RTL instead of hard-coded const
vectors
and UNSPECs.
/* snip */
+(define_insn "simd_h<optab>w_<mode>_<su>"
+  [(set (match_operand:<WVEC_HALF> 0 "register_operand" "=f")
+       (addsub:<WVEC_HALF>
+         (vec_select:<WVEC_HALF>
+           (any_extend:<WVEC>
Does the order of any_extend affect the code generation?
I'm not sure but I think it makes sense to keep the select/extend order
consistent for LoongArch, thus I'll make any_extend out of vec_select in
the next version of the series.  I just didn't really notice the order
difference when I wrote this.
In the later stages, we will continue to test whether the order of select/extend affects performance.

Reply via email to