]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Add DLL import/export to AArch64 target
authorEvgeny Karpov <Evgeny.Karpov@microsoft.com>
Sat, 8 Jun 2024 13:49:17 +0000 (13:49 +0000)
committerChristophe Lyon <christophe.lyon@linaro.org>
Tue, 25 Jun 2024 06:38:39 +0000 (06:38 +0000)
commit30db57901ccac7027f93ff71e70a66e26a4f70f5
tree72b8ac907cd60120f737ee1e2e7ab5b676a34fee
parented20feebd9ea31d58861f61205bd412b0c3febd0
aarch64: Add DLL import/export to AArch64 target

This patch reuses the MinGW implementation to enable DLL import/export
functionality for the aarch64-w64-mingw32 target. It also modifies
environment configurations for MinGW.

2024-06-08  Evgeny Karpov <Evgeny.Karpov@microsoft.com>

gcc/ChangeLog:
* config.gcc: Add winnt-dll.o, which contains the DLL
import/export implementation.
* config/aarch64/aarch64.cc (aarch64_load_symref_appropriately):
Add dllimport implementation.
(aarch64_expand_call): Likewise.
(aarch64_legitimize_address): Likewise.
* config/aarch64/cygming.h (SYMBOL_FLAG_DLLIMPORT): Modify MinGW
environment to support DLL import/export.
(SYMBOL_FLAG_DLLEXPORT): Likewise.
(SYMBOL_REF_DLLIMPORT_P): Likewise.
(SYMBOL_FLAG_STUBVAR): Likewise.
(SYMBOL_REF_STUBVAR_P): Likewise.
(TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Likewise.
(TARGET_ASM_FILE_END): Likewise.
(SUB_TARGET_RECORD_STUB): Likewise.
(GOT_ALIAS_SET): Likewise.
(PE_COFF_EXTERN_DECL_SHOULD_BE_LEGITIMIZED): Likewise.
(HAVE_64BIT_POINTERS): Likewise.
gcc/config.gcc
gcc/config/aarch64/aarch64.cc
gcc/config/aarch64/cygming.h