Date
1 - 4 of 4
P extension fixed-point saturation flag CSR
Chuanhua Chang
P extension specification has defined a fixed-point saturation flag CSR. We need to allocate it officially in the user standard read/write address range. Should we use the same CSR for V and P extension? The current vector extension spec defines a "vxsat" CSR that can be used for both P and V extensions.
Best Regards,
Chuanhua
Best Regards,
Chuanhua
andrew@...
Analogous to the F and V extensions sharing fflags/frm, I’d think that P and V would share vxsat/vxrm.
The reasoning is slightly different from the floating-point CSRs; in that case, sharing the registers helps vectorized code to efficiently implement C99 semantics for dynamic rounding mode and exception flags. That concern doesn’t apply to fixed point (at least not today). But the other advantages still apply, namely, smaller context and fewer CSRs.
On Tue, Aug 4, 2020 at 7:36 PM Chuanhua Chang <chchang@...> wrote:
P extension specification has defined a fixed-point saturation flag CSR. We need to allocate it officially in the user standard read/write address range. Should we use the same CSR for V and P extension? The current vector extension spec defines a "vxsat" CSR that can be used for both P and V extensions.
Best Regards,
Chuanhua
Yes, should share the flag. Code that has an outer check for saturation to check if re-scaling needed, won’t want to care whether it was caused by scalar or vector routine.
toggle quoted message
Show quoted text
Krste
On Aug 4, 2020, at 7:54 PM, Andrew Waterman <andrew@...> wrote:Analogous to the F and V extensions sharing fflags/frm, I’d think that P and V would share vxsat/vxrm.The reasoning is slightly different from the floating-point CSRs; in that case, sharing the registers helps vectorized code to efficiently implement C99 semantics for dynamic rounding mode and exception flags. That concern doesn’t apply to fixed point (at least not today). But the other advantages still apply, namely, smaller context and fewer CSRs.On Tue, Aug 4, 2020 at 7:36 PM Chuanhua Chang <chchang@...> wrote:P extension specification has defined a fixed-point saturation flag CSR. We need to allocate it officially in the user standard read/write address range. Should we use the same CSR for V and P extension? The current vector extension spec defines a "vxsat" CSR that can be used for both P and V extensions.
Best Regards,
Chuanhua