diff --git a/internal/sm2ec/p256_asm_loong64.s b/internal/sm2ec/p256_asm_loong64.s index 03f5eda..2ec8d4a 100644 --- a/internal/sm2ec/p256_asm_loong64.s +++ b/internal/sm2ec/p256_asm_loong64.s @@ -414,19 +414,30 @@ TEXT sm2P256SqrInternal<>(SB),NOSPLIT,$0 ADDV t1, t2, acc6 // no carry // *2 + // ALSLV is NOT supported in go 1.25 SRLV $63, acc1, t0 SLLV $1, acc1, acc1 SRLV $63, acc2, t1 - ALSLV $1, t0, acc2, acc2 + // ALSLV $1, t0, acc2, acc2 + SLLV $1, acc2, acc2 + ADDV t0, acc2, acc2 SRLV $63, acc3, t2 - ALSLV $1, t1, acc3, acc3 + // ALSLV $1, t1, acc3, acc3 + SLLV $1, acc3, acc3 + ADDV t1, acc3, acc3 SRLV $63, acc4, t3 - ALSLV $1, t2, acc4, acc4 + // ALSLV $1, t2, acc4, acc4 + SLLV $1, acc4, acc4 + ADDV t2, acc4, acc4 SRLV $63, acc5, t4 - ALSLV $1, t3, acc5, acc5 + // ALSLV $1, t3, acc5, acc5 + SLLV $1, acc5, acc5 + ADDV t3, acc5, acc5 SRLV $63, acc6, acc7 - ALSLV $1, t4, acc6, acc6 - + // ALSLV $1, t4, acc6, acc6 + SLLV $1, acc6, acc6 + ADDV t4, acc6, acc6 + // Missing products MULV x0, x0, acc0 MULHVU x0, x0, t0