Enable .subsections_via_symbols on all assembly files.

Bug: 517899061
Change-Id: I74f97bc1b1222b8f7641d65c19575dea6a6a6964
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/96388
Presubmit-BoringSSL-Verified: boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com <boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: Rudolf Polzer <rpolzer@google.com>
diff --git a/include/openssl/asm_base.h b/include/openssl/asm_base.h
index 666c5a9..ce19034 100644
--- a/include/openssl/asm_base.h
+++ b/include/openssl/asm_base.h
@@ -206,6 +206,14 @@
 #endif
 #endif  // ARM || AARCH64
 
+#if defined(__APPLE__)
+// Require all Apple assembly to be compatible with `.subsections_via_symbols`.
+// Perlasm output will automatically no-op it by marking all non-initials with
+// `.alt_entry`. Other assembly must either do something similar or be
+// compatible with the optimization.
+.subsections_via_symbols
+#endif
+
 #endif  // __ASSEMBLER__
 
 #endif  // OPENSSL_HEADER_ASM_BASE_H