Module Name: src Committed By: skrll Date: Wed Jul 8 10:18:00 UTC 2020
Modified Files: src/sys/arch/arm/arm: armv6_start.S src/sys/arch/arm/arm32: genassym.cf locore.S Log Message: Use the stack provided by armv6_start.S rather than svcstk. This saves some bss too. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/arm/armv6_start.S cvs rdiff -u -r1.92 -r1.93 src/sys/arch/arm/arm32/genassym.cf cvs rdiff -u -r1.40 -r1.41 src/sys/arch/arm/arm32/locore.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/arm/armv6_start.S diff -u src/sys/arch/arm/arm/armv6_start.S:1.17 src/sys/arch/arm/arm/armv6_start.S:1.18 --- src/sys/arch/arm/arm/armv6_start.S:1.17 Fri Jul 3 06:15:27 2020 +++ src/sys/arch/arm/arm/armv6_start.S Wed Jul 8 10:17:59 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: armv6_start.S,v 1.17 2020/07/03 06:15:27 skrll Exp $ */ +/* $NetBSD: armv6_start.S,v 1.18 2020/07/08 10:17:59 skrll Exp $ */ /*- * Copyright (c) 2012, 2017, 2018 The NetBSD Foundation, Inc. @@ -230,6 +230,8 @@ generic_savevars: */ .section "_init_memory", "aw", %nobits .p2align INIT_ARM_STACK_SHIFT + .global start_stacks_bottom + .global start_stacks_top start_stacks_bottom: .space INIT_ARM_STACK_SIZE * MAXCPUS start_stacks_top: Index: src/sys/arch/arm/arm32/genassym.cf diff -u src/sys/arch/arm/arm32/genassym.cf:1.92 src/sys/arch/arm/arm32/genassym.cf:1.93 --- src/sys/arch/arm/arm32/genassym.cf:1.92 Wed Jul 8 10:04:20 2020 +++ src/sys/arch/arm/arm32/genassym.cf Wed Jul 8 10:18:00 2020 @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.92 2020/07/08 10:04:20 skrll Exp $ +# $NetBSD: genassym.cf,v 1.93 2020/07/08 10:18:00 skrll Exp $ # Copyright (c) 1982, 1990 The Regents of the University of California. # All rights reserved. @@ -31,7 +31,7 @@ # SUCH DAMAGE. if defined(_KERNEL_OPT) -include "opt_compat_netbsd.h" +include "opt_arm_start.h" include "opt_execfmt.h" include "opt_multiprocessor.h" endif @@ -73,6 +73,10 @@ ifdef __HAVE_FAST_SOFTINTS define __HAVE_FAST_SOFTINTS 1 endif +ifdef __HAVE_GENERIC_START +define __HAVE_GENERIC_START 1 +endif + ifdef __HAVE_MM_MD_DIRECT_MAPPED_PHYS define __HAVE_MM_MD_DIRECT_MAPPED_PHYS 1 endif Index: src/sys/arch/arm/arm32/locore.S diff -u src/sys/arch/arm/arm32/locore.S:1.40 src/sys/arch/arm/arm32/locore.S:1.41 --- src/sys/arch/arm/arm32/locore.S:1.40 Sun Jul 14 09:29:21 2019 +++ src/sys/arch/arm/arm32/locore.S Wed Jul 8 10:18:00 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.40 2019/07/14 09:29:21 skrll Exp $ */ +/* $NetBSD: locore.S,v 1.41 2020/07/08 10:18:00 skrll Exp $ */ /* * Copyright (C) 1994-1997 Mark Brinicombe @@ -43,7 +43,7 @@ /* What size should this really be ? It is only used by init_arm() */ #define INIT_ARM_STACK_SIZE 2048 - RCSID("$NetBSD: locore.S,v 1.40 2019/07/14 09:29:21 skrll Exp $") + RCSID("$NetBSD: locore.S,v 1.41 2020/07/08 10:18:00 skrll Exp $") /* * This is for kvm_mkdb, and should be the address of the beginning @@ -121,13 +121,18 @@ ASEND(uartputc) #else .word _C_LABEL(cpu_info_store) #endif +#if !defined(__HAVE_GENERIC_START) .word svcstk_end +#else + .word start_stacks_top +#endif .Lmainreturned: .asciz "main() returned" .align 0 ASEND(start) +#if !defined(__HAVE_GENERIC_START) .bss #ifdef __ARM_EABI__ .align 3 @@ -135,6 +140,7 @@ ASEND(start) svcstk: .space INIT_ARM_STACK_SIZE svcstk_end: +#endif .text .align 0