diff options
author | Conrad Meyer <cem@FreeBSD.org> | 2020-12-05 00:33:28 +0000 |
---|---|---|
committer | Conrad Meyer <cem@FreeBSD.org> | 2020-12-05 00:33:28 +0000 |
commit | 78599c32efed3247d165302a1fbe8d9203e38974 (patch) | |
tree | aaac03f469bc1e5e6145584338bb8ef7e3d55fd2 /stand/powerpc | |
parent | ac4dd4cd957016b9c5b7897f3c70efdd4e306407 (diff) | |
download | src-78599c32efed3247d165302a1fbe8d9203e38974.tar.gz src-78599c32efed3247d165302a1fbe8d9203e38974.zip |
Add CFI start/end proc directives to arm64, i386, and ppc
Follow-up to r353959 and r368070: do the same for other architectures.
arm32 already seems to use its own .fnstart/.fnend directives, which
appear to be ARM-specific variants of the same thing. Likewise, MIPS
uses .frame directives.
Reviewed by: arichardson
Differential Revision: https://reviews.freebsd.org/D27387
Notes
Notes:
svn path=/head/; revision=368354
Diffstat (limited to 'stand/powerpc')
-rw-r--r-- | stand/powerpc/kboot/host_syscall.S | 13 | ||||
-rw-r--r-- | stand/powerpc/uboot/start.S | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/stand/powerpc/kboot/host_syscall.S b/stand/powerpc/kboot/host_syscall.S index 1cb9016715ac..dc236afdeda7 100644 --- a/stand/powerpc/kboot/host_syscall.S +++ b/stand/powerpc/kboot/host_syscall.S @@ -13,11 +13,13 @@ ENTRY(host_read) 1: li %r3, 0 blr +END(host_read) ENTRY(host_write) li %r0, 4 # SYS_write sc blr +END(host_write) ENTRY(host_seek) mr %r4,%r5 @@ -26,11 +28,13 @@ ENTRY(host_seek) li %r0, 140 # SYS_llseek sc blr +END(host_seek) ENTRY(host_llseek) li %r0, 140 # SYS_llseek sc blr +END(host_llseek) ENTRY(host_open) li %r0, 5 # SYS_open @@ -40,45 +44,54 @@ ENTRY(host_open) 1: li %r3, 0 blr +END(host_open) ENTRY(host_close) li %r0, 6 # SYS_close sc blr +END(host_close) ENTRY(host_mmap) li %r0, 90 # SYS_mmap sc blr +END(host_mmap) ENTRY(host_uname) li %r0, 122 # SYS_uname sc blr +END(host_uname) ENTRY(host_gettimeofday) li %r0, 78 # SYS_gettimeofday sc blr +END(host_gettimeofday) ENTRY(host_select) li %r0, 142 # SYS_select sc blr +END(host_select) ENTRY(kexec_load) lis %r6,21 # KEXEC_ARCH_PPC64 li %r0,268 # __NR_kexec_load sc blr +END(kexec_load) ENTRY(host_reboot) li %r0,88 # SYS_reboot sc blr +END(host_reboot) ENTRY(host_getdents) li %r0,141 # SYS_getdents sc blr +END(host_getdents) diff --git a/stand/powerpc/uboot/start.S b/stand/powerpc/uboot/start.S index 3c8d64ae724f..cee56e6ea75b 100644 --- a/stand/powerpc/uboot/start.S +++ b/stand/powerpc/uboot/start.S @@ -85,6 +85,7 @@ ENTRY(syscall) lwz %r30, 12(%r1) mr %r1, %r11 blr +END(syscall) /* * Data section |