Similarly to x86, PowerPC and SPARC, this enables the use of custom run-time
descriptors in Ada, thus eliminating the need for trampolines and executable
stack in presence of pointers to nested functions.
Tested on Aarch64/Linux, OK for the mainline?
2016-11-13 Eric Botcazou <ebotca...@adacore.com>
PR ada/67205
* config/aarch64/aarch64.c (TARGET_CUSTOM_FUNCTION_DESCRIPTORS):
Define.
--
Eric Botcazou
Index: config/aarch64/aarch64.c
===================================================================
--- config/aarch64/aarch64.c (revision 242334)
+++ config/aarch64/aarch64.c (working copy)
@@ -14502,6 +14502,10 @@ aarch64_optab_supported_p (int op, machi
#undef TARGET_OMIT_STRUCT_RETURN_REG
#define TARGET_OMIT_STRUCT_RETURN_REG true
+/* The architecture reserves bits 0 and 1 so use bit 2 for descriptors. */
+#undef TARGET_CUSTOM_FUNCTION_DESCRIPTORS
+#define TARGET_CUSTOM_FUNCTION_DESCRIPTORS 4
+
struct gcc_target targetm = TARGET_INITIALIZER;
#include "gt-aarch64.h"