diff options
author | Olivier Houchard <cognet@FreeBSD.org> | 2021-06-25 23:06:26 +0000 |
---|---|---|
committer | Olivier Houchard <cognet@FreeBSD.org> | 2021-06-30 12:53:57 +0000 |
commit | c1da17a86cdbb364f1c946b8346601e72643daf1 (patch) | |
tree | 8064d31d0f7ccc82c17589cf5413675fc258111c /sys/arm | |
parent | 0a0f7486413c147d56808b38055c40c64cff61f5 (diff) | |
download | src-c1da17a86cdbb364f1c946b8346601e72643daf1.tar.gz src-c1da17a86cdbb364f1c946b8346601e72643daf1.zip |
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.
Diffstat (limited to 'sys/arm')
-rw-r--r-- | sys/arm/arm/bcopyinout.S | 5 | ||||
-rw-r--r-- | sys/arm/arm/bcopyinout_xscale.S | 44 | ||||
-rw-r--r-- | sys/arm/arm/machdep.c | 5 | ||||
-rw-r--r-- | sys/arm/arm/support.S | 41 | ||||
-rw-r--r-- | sys/arm/include/md_var.h | 10 |
5 files changed, 0 insertions, 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, |