Module Name: src Committed By: matt Date: Mon Aug 19 22:08:31 UTC 2013
Modified Files: src/sys/arch/arm/include: asm.h Log Message: Do alternative text sections better, add a _TEXT_SECTION which defaults to .text but can be overridden before <arm/asm.h> gets included. To generate a diff of this commit: cvs rdiff -u -r1.22 -r1.23 src/sys/arch/arm/include/asm.h 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/include/asm.h diff -u src/sys/arch/arm/include/asm.h:1.22 src/sys/arch/arm/include/asm.h:1.23 --- src/sys/arch/arm/include/asm.h:1.22 Sun Aug 18 05:06:49 2013 +++ src/sys/arch/arm/include/asm.h Mon Aug 19 22:08:31 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: asm.h,v 1.22 2013/08/18 05:06:49 matt Exp $ */ +/* $NetBSD: asm.h,v 1.23 2013/08/19 22:08:31 matt Exp $ */ /* * Copyright (c) 1990 The Regents of the University of California. @@ -65,6 +65,9 @@ # define _ALIGN_TEXT .align 2 #endif +#ifndef _TEXT_SECTION +#define _TEXT_SECTION .text +#endif /* * gas/arm uses @ as a single comment character and thus cannot be used here * Instead it recognised the # instead of an @ symbols in .type directives @@ -73,20 +76,16 @@ */ #define _ASM_TYPE_FUNCTION %function #define _ASM_TYPE_OBJECT %object -#define _THUMB_ENTRY_NS(x) \ - _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ +#define _THUMB_ENTRY(x) \ + _TEXT_SECTION; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ .thumb_func; .code 16; x: -#define _THUMB_ENTRY(x) .text; _THUMB_ENTRY_NS(x) -#define _ARM_ENTRY_NS(x) \ - _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ +#define _ARM_ENTRY(x) \ + _TEXT_SECTION; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ .code 32; x: -#define _ARM_ENTRY(x) .text; _ARM_ENTRY_NS(x) #ifdef __thumb__ #define _ENTRY(x) _THUMB_ENTRY(x) -#define _ENTRY_NS(x) _THUMB_ENTRY_NS(x) #else #define _ENTRY(x) _ARM_ENTRY(x) -#define _ENTRY_NS(x) _ARM_ENTRY_NS(x) #endif #define _END(x) .size x,.-x