nuttx/arch/arm/src/common
hujun5 908df725ad arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS
reason:
1 On different architectures, we can utilize more optimized strategies
  to implement up_current_regs/up_set_current_regs.
eg. use interrupt registersor percpu registers.

code size
before
    text    data     bss     dec     hex filename
 262848   49985   63893  376726   5bf96 nuttx

after
       text    data     bss     dec     hex filename
 262844   49985   63893  376722   5bf92 nuttx

size change -4

Configuring NuttX and compile:
$ ./tools/configure.sh -l qemu-armv8a:nsh_smp
$ make
Running with qemu
$ qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic \
   -machine virt,virtualization=on,gic-version=3 \
   -net none -chardev stdio,id=con,mux=on -serial chardev:con \
   -mon chardev=con,mode=readline -kernel ./nuttx

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-09-13 23:18:58 +08:00
..
ghs greenhills: add dummy implementation for unused function 2024-08-19 10:37:54 +08:00
gnu arch: inline up_testset in arm arm64 riscv xtensa 2024-08-21 01:45:10 +08:00
iar arch: inline up_testset in arm arm64 riscv xtensa 2024-08-21 01:45:10 +08:00
arm_allocateheap.c arch/arm: support kernel heap in BUILD_FLAT mode 2024-09-05 11:19:47 -03:00
arm_backtrace_fp.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_backtrace_sp.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_backtrace_unwind.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_checkstack.c stack: update up_get_intstackbase API to support cpu id 2024-04-09 16:59:00 -03:00
arm_createstack.c arm_createstack: fix warning for tc32 compiler. 2022-05-11 20:14:30 +03:00
arm_exit.c sched: move nxsched_dumponexit() to task_exithook 2024-06-30 17:30:42 +08:00
arm_fork.c libs/libc/fork: add lib_fork implementation 2023-07-26 10:41:52 +02:00
arm_fork.h vfork: modify struct vfork_s 2023-07-14 20:48:51 +08:00
arm_getintstack.c arch: Remove xxx_intstack_top and xxx_intstack_alloc 2024-04-09 16:59:00 -03:00
arm_hostfs.c hostfs: mask bit fields of not support 2023-09-23 05:28:57 +09:00
arm_idle.c arch: arm: common: Author Gregory Nutt: update licenses to Apache 2021-03-25 01:34:38 -07:00
arm_initialize.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_internal.h arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_lowputs.c arch: arm: common: Author Gregory Nutt: update licenses to Apache 2021-03-25 01:34:38 -07:00
arm_mdelay.c arch: arm: common: Author Gregory Nutt: update licenses to Apache 2021-03-25 01:34:38 -07:00
arm_modifyreg8.c arch: Merge up_arch.h into up_internal.h 2022-03-14 09:32:17 +02:00
arm_modifyreg16.c arch: Merge up_arch.h into up_internal.h 2022-03-14 09:32:17 +02:00
arm_modifyreg32.c arch: Merge up_arch.h into up_internal.h 2022-03-14 09:32:17 +02:00
arm_nputs.c up_nputs: fix AddressSanitizer: global-buffer-overflow problem 2022-09-01 11:51:48 +08:00
arm_pthread_start.c arch: Move the content from svcall.h to syscall.h 2022-02-27 22:54:13 +08:00
arm_registerdump.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_releasestack.c arch/arm: Remove FAR and CODE from common/ and arm*/ folder 2022-04-19 00:23:59 +03:00
arm_semi_syslog.c arch: Add up_nputs function to handle the non '\0' string correctly 2022-07-17 17:31:19 +03:00
arm_signal_dispatch.c arch/arm: Remove FAR and CODE from common/ and arm*/ folder 2022-04-19 00:23:59 +03:00
arm_stackframe.c arch/arm: Remove FAR and CODE from common/ and arm*/ folder 2022-04-19 00:23:59 +03:00
arm_switchcontext.c arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS 2024-09-13 23:18:58 +08:00
arm_task_start.c arch/arm: Remove FAR and CODE from common/ and arm*/ folder 2022-04-19 00:23:59 +03:00
arm_tls.c arch/arm: Remove FAR and CODE from common/ and arm*/ folder 2022-04-19 00:23:59 +03:00
arm_udelay.c arch: arm: common: Author Gregory Nutt: update licenses to Apache 2021-03-25 01:34:38 -07:00
arm_usestack.c arch: Move STACK_ALIGNMENT definition to up_internal.h 2022-02-28 15:05:41 +08:00
CMakeLists.txt arch: inline up_testset in arm arm64 riscv xtensa 2024-08-21 01:45:10 +08:00
hwcap.h procfs:add armv8-m cpuinfo 2023-05-27 03:29:41 +08:00
Make.defs arch: inline up_testset in arm arm64 riscv xtensa 2024-08-21 01:45:10 +08:00
README_lwl_console.txt arch/arm: Rename all up_*.c files to arm_*.c 2020-05-01 02:11:01 +01:00
Toolchain.defs greenhills: fix the build option warning 2024-08-28 01:22:03 +08:00