[PATCH v2 0/8] ARM AArch64 Support for BSD

Ajeet Singh posted 8 patches 4 months, 2 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20240707191128.10509-1-itachis@FreeBSD.org
Maintainers: Warner Losh <imp@bsdimp.com>, Kyle Evans <kevans@freebsd.org>
bsd-user/aarch64/signal.c               | 137 +++++++++++++++++
bsd-user/aarch64/target_arch.h          |  28 ++++
bsd-user/aarch64/target_arch_cpu.c      |  31 ++++
bsd-user/aarch64/target_arch_cpu.h      | 188 ++++++++++++++++++++++++
bsd-user/aarch64/target_arch_elf.h      | 165 +++++++++++++++++++++
bsd-user/aarch64/target_arch_reg.h      |  56 +++++++
bsd-user/aarch64/target_arch_signal.h   |  80 ++++++++++
bsd-user/aarch64/target_arch_sigtramp.h |  48 ++++++
bsd-user/aarch64/target_arch_sysarch.h  |  42 ++++++
bsd-user/aarch64/target_arch_thread.h   |  61 ++++++++
bsd-user/aarch64/target_arch_vmparam.h  |  74 ++++++++++
bsd-user/aarch64/target_syscall.h       |  51 +++++++
bsd-user/qemu.h                         |   3 +
13 files changed, 964 insertions(+)
create mode 100644 bsd-user/aarch64/signal.c
create mode 100644 bsd-user/aarch64/target_arch.h
create mode 100644 bsd-user/aarch64/target_arch_cpu.c
create mode 100644 bsd-user/aarch64/target_arch_cpu.h
create mode 100644 bsd-user/aarch64/target_arch_elf.h
create mode 100644 bsd-user/aarch64/target_arch_reg.h
create mode 100644 bsd-user/aarch64/target_arch_signal.h
create mode 100644 bsd-user/aarch64/target_arch_sigtramp.h
create mode 100644 bsd-user/aarch64/target_arch_sysarch.h
create mode 100644 bsd-user/aarch64/target_arch_thread.h
create mode 100644 bsd-user/aarch64/target_arch_vmparam.h
create mode 100644 bsd-user/aarch64/target_syscall.h
[PATCH v2 0/8] ARM AArch64 Support for BSD
Posted by Ajeet Singh 4 months, 2 weeks ago
Patch 1: Previous patches 1 to 5, which were reviewed and acked, have been folded into this patch.Some changes that were suggested,
         such as replacing "pstate &= ~PSTATE_C" with faster constructs like "env->CF = 0", have been addressed in patch 8.
Patch 2: In this patch, patches 6 to 11 have been folded. Changes such as using "ROUND_DOWN" for stack pointer calculation
         and replacing "__uint128_t" with "Int128" in the following patch 8 have been addressed. Also, "CPUARMState" will be
         changed to "CPUArchState" in the upcoming version, and the issue with "-R" is being worked on separately.
Patch 3: Patches 12 to 16 were reviewed and folded. The function "get_second_rval" will be used upstream.
Patch 4: Patches 17 to 19 were folded, and "__uint128_t" to "Int128" has been fixed in patch 8. Also, the suggestion to
         use "const_le32()" has been deferred for now.
Patch 5: Previously patch 20, the FP suggestion is being deferred, but the patch is ready for review.
Patch 6: Previously patch 21 has been reviewed.
Patch 7: Previously patch 22, same as patch 5.
Patch 8: Previously patch 23. For now, no changes, but issues of other patches have been addressed, such as updating
         AArch64 code to use CF directly and changing FP data structures to use Int128 instead of __uint128_t.

Stacey Son (6):
  bsd-user:Add CPU initialization and management functions
  bsd-user:Add AArch64 register handling and related functions
  bsd-user:Add ARM AArch64 signal handling support
  bsd-user:Add get_mcontext function for ARM AArch64
  bsd-user:Add set_mcontext function for ARM AArch64
  bsd-user:Add AArch64 improvements and signal handling functions

Warner Losh (2):
  bsd-user:Add ARM AArch64 support and capabilities
  bsd-user:Add setup_sigframe_arch function for ARM AArch64

 bsd-user/aarch64/signal.c               | 137 +++++++++++++++++
 bsd-user/aarch64/target_arch.h          |  28 ++++
 bsd-user/aarch64/target_arch_cpu.c      |  31 ++++
 bsd-user/aarch64/target_arch_cpu.h      | 188 ++++++++++++++++++++++++
 bsd-user/aarch64/target_arch_elf.h      | 165 +++++++++++++++++++++
 bsd-user/aarch64/target_arch_reg.h      |  56 +++++++
 bsd-user/aarch64/target_arch_signal.h   |  80 ++++++++++
 bsd-user/aarch64/target_arch_sigtramp.h |  48 ++++++
 bsd-user/aarch64/target_arch_sysarch.h  |  42 ++++++
 bsd-user/aarch64/target_arch_thread.h   |  61 ++++++++
 bsd-user/aarch64/target_arch_vmparam.h  |  74 ++++++++++
 bsd-user/aarch64/target_syscall.h       |  51 +++++++
 bsd-user/qemu.h                         |   3 +
 13 files changed, 964 insertions(+)
 create mode 100644 bsd-user/aarch64/signal.c
 create mode 100644 bsd-user/aarch64/target_arch.h
 create mode 100644 bsd-user/aarch64/target_arch_cpu.c
 create mode 100644 bsd-user/aarch64/target_arch_cpu.h
 create mode 100644 bsd-user/aarch64/target_arch_elf.h
 create mode 100644 bsd-user/aarch64/target_arch_reg.h
 create mode 100644 bsd-user/aarch64/target_arch_signal.h
 create mode 100644 bsd-user/aarch64/target_arch_sigtramp.h
 create mode 100644 bsd-user/aarch64/target_arch_sysarch.h
 create mode 100644 bsd-user/aarch64/target_arch_thread.h
 create mode 100644 bsd-user/aarch64/target_arch_vmparam.h
 create mode 100644 bsd-user/aarch64/target_syscall.h

-- 
2.34.1