Date: Wed, 30 Jun 2021 12:56:12 GMT From: Olivier Houchard <cognet@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: c1da17a86cdb - main - arm: Garbage collect _arm_memcpy/_arm_bzero. Message-ID: <202106301256.15UCuC2C025347@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by cognet: URL: https://cgit.FreeBSD.org/src/commit/?id=c1da17a86cdbb364f1c946b8346601e72643daf1 commit c1da17a86cdbb364f1c946b8346601e72643daf1 Author: Olivier Houchard <cognet@FreeBSD.org> AuthorDate: 2021-06-25 23:06:26 +0000 Commit: Olivier Houchard <cognet@FreeBSD.org> CommitDate: 2021-06-30 12:53:57 +0000 arm: Garbage collect _arm_memcpy/_arm_bzero. Remove any attempt to use _arm_memcpy and _arm_bzero. It was used by some xscale platforms to provide functions to use the DMA engine for big zeroing/copying work, but those platforms are long gone, and it's unlikely anything else will use those. --- sys/arm/arm/bcopyinout.S | 5 ----- sys/arm/arm/bcopyinout_xscale.S | 44 ----------------------------------------- sys/arm/arm/machdep.c | 5 ----- sys/arm/arm/support.S | 41 -------------------------------------- sys/arm/include/md_var.h | 10 ---------- 5 files changed, 105 deletions(-) diff --git a/sys/arm/arm/bcopyinout.S b/sys/arm/arm/bcopyinout.S index 2a9d48f989ea..dcdf8ed5af0c 100644 --- a/sys/arm/arm/bcopyinout.S +++ b/sys/arm/arm/bcopyinout.S @@ -41,11 +41,6 @@ #include <machine/asm.h> #include <sys/errno.h> -.L_arm_memcpy: - .word _C_LABEL(_arm_memcpy) -.L_min_memcpy_size: - .word _C_LABEL(_min_memcpy_size) - __FBSDID("$FreeBSD$"); #include <arm/arm/bcopyinout_xscale.S> diff --git a/sys/arm/arm/bcopyinout_xscale.S b/sys/arm/arm/bcopyinout_xscale.S index e592b901201f..4849ab9e794a 100644 --- a/sys/arm/arm/bcopyinout_xscale.S +++ b/sys/arm/arm/bcopyinout_xscale.S @@ -67,28 +67,6 @@ ENTRY(copyin) movcs r0, #EFAULT RETc(cs) - ldr r3, .L_arm_memcpy - ldr r3, [r3] - cmp r3, #0 - beq .Lnormal - ldr r3, .L_min_memcpy_size - ldr r3, [r3] - cmp r2, r3 - blt .Lnormal - stmfd sp!, {r0-r2, r4, lr} - mov r3, r0 - mov r0, r1 - mov r1, r3 - mov r3, #2 /* SRC_IS_USER */ - ldr r4, .L_arm_memcpy - mov lr, pc - ldr pc, [r4] - cmp r0, #0 - ldmfd sp!, {r0-r2, r4, lr} - moveq r0, #0 - RETeq - -.Lnormal: stmfd sp!, {r10-r11, lr} GET_PCB(r10) @@ -452,28 +430,6 @@ ENTRY(copyout) movcs r0, #EFAULT RETc(cs) - ldr r3, .L_arm_memcpy - ldr r3, [r3] - cmp r3, #0 - beq .Lnormale - ldr r3, .L_min_memcpy_size - ldr r3, [r3] - cmp r2, r3 - blt .Lnormale - stmfd sp!, {r0-r2, r4, lr} - mov r3, r0 - mov r0, r1 - mov r1, r3 - mov r3, #1 /* DST_IS_USER */ - ldr r4, .L_arm_memcpy - mov lr, pc - ldr pc, [r4] - cmp r0, #0 - ldmfd sp!, {r0-r2, r4, lr} - moveq r0, #0 - RETeq - -.Lnormale: stmfd sp!, {r10-r11, lr} GET_PCB(r10) diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c index 3d966527599d..4f26c6e9ebf9 100644 --- a/sys/arm/arm/machdep.c +++ b/sys/arm/arm/machdep.c @@ -122,11 +122,6 @@ vm_offset_t vector_page; /* The address at which the kernel was loaded. Set early in initarm(). */ vm_paddr_t arm_physmem_kernaddr; -int (*_arm_memcpy)(void *, void *, int, int) = NULL; -int (*_arm_bzero)(void *, int, int) = NULL; -int _min_memcpy_size = 0; -int _min_bzero_size = 0; - extern int *end; #ifdef FDT diff --git a/sys/arm/arm/support.S b/sys/arm/arm/support.S index a3ee3c3b93ba..7a39c283aed1 100644 --- a/sys/arm/arm/support.S +++ b/sys/arm/arm/support.S @@ -93,14 +93,6 @@ __FBSDID("$FreeBSD$"); .syntax unified -.L_arm_memcpy: - .word _C_LABEL(_arm_memcpy) -.L_arm_bzero: - .word _C_LABEL(_arm_bzero) -.L_min_memcpy_size: - .word _C_LABEL(_min_memcpy_size) -.L_min_bzero_size: - .word _C_LABEL(_min_bzero_size) /* * memset: Sets a block of memory to the specified value * @@ -114,22 +106,6 @@ __FBSDID("$FreeBSD$"); */ /* LINTSTUB: Func: void bzero(void *, size_t) */ ENTRY(bzero) - ldr r3, .L_arm_bzero - ldr r3, [r3] - cmp r3, #0 - beq .Lnormal0 - ldr r2, .L_min_bzero_size - ldr r2, [r2] - cmp r1, r2 - blt .Lnormal0 - stmfd sp!, {r0, r1, lr} - mov r2, #0 - mov lr, pc - mov pc, r3 - cmp r0, #0 - ldmfd sp!, {r0, r1, lr} - RETeq -.Lnormal0: mov r3, #0x00 b do_memset END(bzero) @@ -779,23 +755,6 @@ ENTRY(memcpy) bhi .Lnormal #endif #endif - ldr r3, .L_arm_memcpy - ldr r3, [r3] - cmp r3, #0 - beq .Lnormal - ldr r3, .L_min_memcpy_size - ldr r3, [r3] - cmp r2, r3 - blt .Lnormal - stmfd sp!, {r0-r2, r4, lr} - mov r3, #0 - ldr r4, .L_arm_memcpy - mov lr, pc - ldr pc, [r4] - cmp r0, #0 - ldmfd sp!, {r0-r2, r4, lr} - RETeq -.Lnormal: mov r3, r0 /* We must not clobber r0 */ /* Word-align the destination buffer */ diff --git a/sys/arm/include/md_var.h b/sys/arm/include/md_var.h index d60992f104e1..19468bd30e02 100644 --- a/sys/arm/include/md_var.h +++ b/sys/arm/include/md_var.h @@ -42,16 +42,6 @@ extern u_long elf_hwcap; extern u_long elf_hwcap2; extern vm_paddr_t arm_physmem_kernaddr; -extern int (*_arm_memcpy)(void *, void *, int, int); -extern int (*_arm_bzero)(void *, int, int); - -extern int _min_memcpy_size; -extern int _min_bzero_size; - -#define DST_IS_USER 0x1 -#define SRC_IS_USER 0x2 -#define IS_PHYSICAL 0x4 - enum cpu_class { CPU_CLASS_NONE, CPU_CLASS_CORTEXA,
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202106301256.15UCuC2C025347>