https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122552

--- Comment #2 from Jeffrey A. Law <law at gcc dot gnu.org> ---
So this is the code I'm currently getting on the trunk:

vsll_vx_0:
        beq     a3,zero,.L8     # 9     [c=16 l=4]  *branchdi
        zext.w  a3,a3   # 12    [c=4 l=4]  *zero_extendsidi2_bitmanip/0
        zext.w  a2,a2   # 35    [c=4 l=4]  *zero_extendsidi2_bitmanip/0
.L3:
        vsetvli a5,a3,e64,m1,ta,ma      # 64    [c=0 l=4]  vsetvldi
        vle64.v v1,0(a1)        # 16    [c=4 l=4]  *pred_movrvvm1di/1
        sub     a3,a3,a5        # 22    [c=4 l=4]  subdi3
        sh3add  a1,a5,a1        # 20    [c=4 l=4]  *shNadd
        vsll.vx v1,v1,a2        # 49    [c=4 l=4]  pred_ashlrvvm1di_scalar/2
        vse64.v v1,0(a0)        # 19    [c=4 l=4]  pred_storervvm1di
        sh3add  a0,a5,a0        # 21    [c=4 l=4]  *shNadd
        bne     a3,zero,.L3     # 24    [c=16 l=4]  *branchdi


Note the vsll.vx, so it seems to me like this is working.   So is there's a
need to keep this open?  Am I missing something?

Reply via email to