它会使用 vxrm 舍入吗?
不会。VADD.VI 是普通整数加法,vxrm 用于定点舍入类指令。
将vs2每个元素与imm相加:vd[i]=vs2[i]+imm。
VADD.VI 对活动元素执行普通向量整数加法:vd[i] = vs2[i] + sign_extend(imm)。imm 是 5 位有符号立即数(-16..15),符号扩展到 SEW。结果按 SEW 宽度回绕写回;它不是饱和加法,也不使用 vxrm 舍入。
VADD.VI 对每个活动元素执行普通整数加法,第二操作数是符号扩展到 SEW 的 5 位立即数,结果按 SEW 宽度写回。
结合 «vsetvli t0, a0, e32, m1, ta, ma vadd.vi v1, v2, 5» 等实际代码理解该场景。
结合 «vsetvli t0, a0, e32, m1, ta, ma vadd.vi v1, v2, 5» 等实际代码理解该场景。
不会。VADD.VI 是普通整数加法,vxrm 用于定点舍入类指令。
imm 是 5 位有符号立即数,符号扩展到当前 SEW。