HomeFreeBSD

Trim duplicate CSR swaps from user exceptions.

Description

Trim duplicate CSR swaps from user exceptions.

The stack pointer is swapped with the sscratch CSR just before the
jump to cpu_exception_handler_user where the first instruction swaps
it again. The two swaps together are a no-op, but the csr swap
instructions can be expensive (e.g. on Bluespec RISC-V cores csr swap
instructions force a full pipeline stall).

Reported by: jrtc27
Reviewed by: br
MFC after: 2 weeks
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D23394

Details

Provenance
jhbAuthored on
Reviewer
br
Differential Revision
D23394: Trim duplicate CSR swaps from user exceptions.
Parents
rS357312: Remove duplicated empty lines from kern/*.c
Branches
Unknown
Tags
Unknown