diff options
author | Christophe Lyon <christophe.lyon@linaro.org> | 2024-06-19 15:48:30 +0000 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@linaro.org> | 2024-06-26 09:02:32 +0000 |
commit | c2091f706c1d6aa9d187d116885de5e8defaa695 (patch) | |
tree | 0445b65cfd9af2ad0aba5904ed1cf499d7d1f52f | |
parent | 7e3c833592b282355a57dd34459b152e4e078d19 (diff) | |
download | newlib-c2091f706c1d6aa9d187d116885de5e8defaa695.zip newlib-c2091f706c1d6aa9d187d116885de5e8defaa695.tar.gz newlib-c2091f706c1d6aa9d187d116885de5e8defaa695.tar.bz2 |
arm: emit .type %function directive in FUNC_START macro
The linker needs to know whether a symbol is STT_FUNCTION when
deciding which farcall stub to emit (if needed), this patch adds this
to the FUNC_START macro which is used in crt0.
-rw-r--r-- | libgloss/arm/crt0.S | 2 | ||||
-rw-r--r-- | libgloss/arm/redboot-crt0.S | 2 | ||||
-rw-r--r-- | newlib/libc/sys/arm/crt0.S | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/libgloss/arm/crt0.S b/libgloss/arm/crt0.S index cd1a20d..9ff0e63 100644 --- a/libgloss/arm/crt0.S +++ b/libgloss/arm/crt0.S @@ -48,6 +48,7 @@ .thumb .macro FUNC_START name .global \name + .type \name, %function .thumb_func \name: .endm @@ -55,6 +56,7 @@ .code 32 .macro FUNC_START name .global \name + .type \name, %function \name: .endm #endif diff --git a/libgloss/arm/redboot-crt0.S b/libgloss/arm/redboot-crt0.S index 0e3a9b4..c9f3440 100644 --- a/libgloss/arm/redboot-crt0.S +++ b/libgloss/arm/redboot-crt0.S @@ -17,6 +17,7 @@ #ifdef PREFER_THUMB .macro FUNC_START name .global \name + .type \name, %function .thumb_func \name: .endm @@ -24,6 +25,7 @@ #else .macro FUNC_START name .global \name + .type \name, %function \name: .endm .code 32 diff --git a/newlib/libc/sys/arm/crt0.S b/newlib/libc/sys/arm/crt0.S index 90d5be3..dae0f04 100644 --- a/newlib/libc/sys/arm/crt0.S +++ b/newlib/libc/sys/arm/crt0.S @@ -48,6 +48,7 @@ .thumb .macro FUNC_START name .global \name + .type \name, %function .thumb_func \name: .endm @@ -55,6 +56,7 @@ .code 32 .macro FUNC_START name .global \name + .type \name, %function \name: .endm #endif |