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"

Reply via email to