Does it use vxrm rounding?
No. VADD is ordinary integer addition; vxrm is for fixed-point rounding instructions.
Add each integer element to x[rs1]: vd[i] = vs2[i] + x[rs1].
VADD.VX performs RVV single-width integer addition. The result keeps the low SEW bits and integer overflow does not trap; use saturating add instructions when saturation is required.
VADD.VX is ordinary vector integer addition, not a fixed-point rounding operation. Each active element is added at SEW width and written to vd.
Understand this scenario with real code like «vsetvli t0, a0, e32, m1, ta, ma vadd.vx v1, v2, a1».
Understand this scenario with real code like «vsetvli t0, a0, e32, m1, ta, ma vadd.vx v1, v2, a1».
No. VADD is ordinary integer addition; vxrm is for fixed-point rounding instructions.