aboutsummaryrefslogtreecommitdiff
path: root/gcc/objc
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2020-10-04 10:09:57 +0100
committerIain Sandoe <iain@sandoe.co.uk>2020-10-11 14:12:43 +0100
commit8703bf5d31fdb4789b5eddca394f8e92a0c55801 (patch)
tree4fec2c5edd9df135d4fba4864a70877d6d7c345a /gcc/objc
parent336fdc8ba88cf617d76d1764df033cbf972904dd (diff)
downloadgcc-8703bf5d31fdb4789b5eddca394f8e92a0c55801.zip
gcc-8703bf5d31fdb4789b5eddca394f8e92a0c55801.tar.gz
gcc-8703bf5d31fdb4789b5eddca394f8e92a0c55801.tar.bz2
Darwin, Objective-C : Adjust objective-c symbol linkage with version.
Earlier linkers cannot handle publicly-visible (or linker-visible) metadata, so we need to make the output of these conditional on version. gcc/ChangeLog: * config/darwin.c (darwin_globalize_label): Make a subset of metadate symbols global. (darwin_label_is_anonymous_local_objc_name): Make a subset of metadata symbols linker-visible. (darwin_override_options): Track more target OS versions, make the next_runtime version track this (unless it's set to 0 for GNU runtime). gcc/objc/ChangeLog: * objc-next-runtime-abi-02.c (FIXUP_NEEDED): Rename ... (USE_FIXUP_BEFORE): ... to this. (next_runtime_02_initialize): Likewise. (next_runtime_abi_02_get_arg_type_list_base): Likewise. (next_runtime_abi_02_build_objc_method_call): Likewise.
Diffstat (limited to 'gcc/objc')
-rw-r--r--gcc/objc/objc-next-runtime-abi-02.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/objc/objc-next-runtime-abi-02.c b/gcc/objc/objc-next-runtime-abi-02.c
index 0c7a600..60bf86a 100644
--- a/gcc/objc/objc-next-runtime-abi-02.c
+++ b/gcc/objc/objc-next-runtime-abi-02.c
@@ -69,7 +69,7 @@ along with GCC; see the file COPYING3. If not see
#define TAG_MSGSENDID_STRET "objc_msgSendId_stret"
#define TAG_MSGSENDSUPER_STRET "objc_msgSendSuper2_stret"
-#define FIXUP_NEEDED 100600
+#define USE_FIXUP_BEFORE 100600
#define TAG_FIXUP "_fixup"
@@ -392,7 +392,7 @@ static void next_runtime_02_initialize (void)
build_v2_protocol_template ();
build_v2_category_template ();
- bool fixup_p = flag_next_runtime < FIXUP_NEEDED;
+ bool fixup_p = flag_next_runtime < USE_FIXUP_BEFORE;
if (fixup_p)
{
/* id objc_msgSend_fixup_rtp (id, struct message_ref_t*, ...); */
@@ -1151,7 +1151,7 @@ next_runtime_abi_02_get_arg_type_list_base (vec<tree, va_gc> **argtypes,
receiver_type = objc_object_type;
vec_safe_push (*argtypes, receiver_type);
- if (flag_next_runtime < FIXUP_NEEDED)
+ if (flag_next_runtime < USE_FIXUP_BEFORE)
/* Selector type - will eventually change to `int'. */
vec_safe_push (*argtypes, superflag ? objc_v2_super_selector_type
: objc_v2_selector_type);
@@ -1821,7 +1821,7 @@ next_runtime_abi_02_build_objc_method_call (location_t loc,
&& TREE_TYPE (receiver) == objc_class_type))
check_for_nil = false;
- if (flag_next_runtime >= FIXUP_NEEDED)
+ if (flag_next_runtime >= USE_FIXUP_BEFORE)
{
tree selector
= next_runtime_abi_02_build_selector_reference (loc, sel_name,