aarch64: Define elf_backend_extern_protected_data to 0 [PR 18705]

Follow-up to commit 90b7a5df152a64d2bea20beb438e8b81049a5c30
("aarch64: Disallow copy relocations on protected data").

Commit 32f573bcb3aaa1c9defcad79dbb5851fcc02ae2d changed ld to produce
R_AARCH64_GLOB_DAT but that defeated the purpose of protected visibility
as an optimization.  Restore the previous behavior (which matches
ld.lld) by defining elf_backend_extern_protected_data to 0.
This commit is contained in:
Fangrui Song 2022-06-23 01:04:39 -07:00 committed by Fangrui Song
parent 325600eb11
commit 4fb55bf6a9
2 changed files with 2 additions and 2 deletions

View File

@ -10116,7 +10116,7 @@ const struct elf_size_info elfNN_aarch64_size_info =
#define elf_backend_dtrel_excludes_plt 1
#define elf_backend_got_header_size (GOT_ENTRY_SIZE * 3)
#define elf_backend_default_execstack 0
#define elf_backend_extern_protected_data 1
#define elf_backend_extern_protected_data 0
#define elf_backend_hash_symbol elf_aarch64_hash_symbol
#undef elf_backend_obj_attrs_section

View File

@ -2,4 +2,4 @@
#ld: -shared
#readelf: -r -W
#...
.* R_AARCH64_GLOB_DAT .* var.*
.* R_AARCH64_RELATIVE .*