nuttx/arch/risc-v/include
Ville Juven e6973c764c riscv/syscall: Optimize user service call performance
This patch changes how user service calls are executed:
Instead of using the common interrupt logic, execute the user service
call directly.

Why? When a user makes a service call request, all of the service call
parameters are already loaded into the correct registers, thus it makes
no sense to first clobber them and then reload them, which is what the
old logic does. It is much more effective to run the system call directly.

During a user system call the interrupts must be re-enabled, which the
new logic does as soon as we know the exception is a user service call
request.

This patch does NOT change the behavior of reserved system calls (like
switch_context), only the user service call request is affected.
2024-06-01 10:40:53 -03:00
..
bl602
bl808 arch/riscv: Add support for Bouffalo Lab BL808 SoC (T-Head C906) 2023-12-12 08:50:03 -08:00
c906
esp32c3 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
esp32c3-legacy risc-v/esp32c3: Rename legacy approach esp32c3 as esp32c3-legacy 2024-01-30 08:32:05 +01:00
esp32c6 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
esp32h2 risc-v/espressif: Rename espressif/esp32c3 as esp32c3 2024-01-30 08:32:05 +01:00
fe310
hpm6000 Add support for hpm6360evk 2024-02-18 09:17:56 -08:00
hpm6750 add hpmicro chip: hpm6750 2023-02-09 14:17:49 +08:00
jh7110 arch/risc-v: Add support for StarFive JH7110 SoC 2023-08-03 22:55:55 -07:00
k210
k230 risc-v/k230: add IPI support to speed up RPTUN/RPMSG 2024-02-21 04:37:03 -08:00
litex risc-v/litex: fix typo in litex/irq.h 2024-01-06 04:15:52 -08:00
mpfs risc-v/mpfs: add athena irq defines 2023-02-15 00:21:03 +08:00
qemu-rv
rv32m1
thead arch/riscv: add T-HEAD CSR mapping 2024-04-11 22:20:39 +08:00
.gitignore
arch.h risc-v/arch.h: revising comments 2024-03-25 20:39:24 +08:00
barriers.h riscv/barrier: Define more granular memory barriers 2023-06-14 16:14:57 -03:00
csr.h arch/risc-v: add risc-v SSTC extension support 2024-04-27 22:09:22 -03:00
elf.h riscv/arch_elf.c: Handle PCREL_HI20/LO12_I/S relocations correctly 2023-12-12 17:32:36 -08:00
inttypes.h
irq.h riscv/syscall: Optimize user service call performance 2024-06-01 10:40:53 -03:00
limits.h
mode.h arch/risc-v: add risc-v SSTC extension support 2024-04-27 22:09:22 -03:00
setjmp.h
spinlock.h
stdarg.h
syscall.h riscv/syscall: Optimize user service call performance 2024-06-01 10:40:53 -03:00
types.h