diff options
author | Evgeny Karpov <evgeny.karpov@microsoft.com> | 2024-08-14 16:43:41 +0200 |
---|---|---|
committer | Evgeny Karpov <eukarpov@gmail.com> | 2024-11-19 14:27:33 +0100 |
commit | 71381ecc1ed4868e6912d0ddaabd6b5a68b738d8 (patch) | |
tree | 8a71619e6bcc4dc5f1e40313d94b151e062214e6 /gcc/config/freebsd-nthr.h | |
parent | fef211ff733f711f540634189c47ce6902386f10 (diff) | |
download | gcc-71381ecc1ed4868e6912d0ddaabd6b5a68b738d8.zip gcc-71381ecc1ed4868e6912d0ddaabd6b5a68b738d8.tar.gz gcc-71381ecc1ed4868e6912d0ddaabd6b5a68b738d8.tar.bz2 |
aarch64: Multiple adjustments to support the SMALL code model correctly
LOCAL_LABEL_PREFIX has been changed to help the assembly
compiler recognize local labels. Emitting locals has been
replaced with the .lcomm directive to declare uninitialized
data without defining an exact section. Functions and objects
were missing declarations. Binutils was not able to distinguish
static from external, or an object from a function.
mingw_pe_declare_object_type has been added to have type
information for relocation on AArch64, which is not the case
for ix86.
This fix relies on changes in binutils.
aarch64: Relocation fixes and LTO
https://sourceware.org/pipermail/binutils/2024-August/136481.html
gcc/ChangeLog:
* config/aarch64/aarch64-coff.h (LOCAL_LABEL_PREFIX):
Use "." as the local label prefix.
(ASM_OUTPUT_ALIGNED_LOCAL): Remove.
(ASM_OUTPUT_LOCAL): New.
* config/aarch64/cygming.h (ASM_OUTPUT_EXTERNAL_LIBCALL):
Update.
(ASM_DECLARE_OBJECT_NAME): New.
(ASM_DECLARE_FUNCTION_NAME): New.
* config/i386/cygming.h (ASM_DECLARE_COLD_FUNCTION_NAME):
Update.
(ASM_OUTPUT_EXTERNAL_LIBCALL): Update.
* config/mingw/winnt.cc (mingw_pe_declare_function_type):
Rename into ...
(mingw_pe_declare_type): ... this.
(i386_pe_start_function): Update.
* config/mingw/winnt.h (mingw_pe_declare_function_type):
Rename into ...
(mingw_pe_declare_type): ... this.
Diffstat (limited to 'gcc/config/freebsd-nthr.h')
0 files changed, 0 insertions, 0 deletions