+2017-06-27 Jerome Lambourg <lambourg@adacore.com>
+ Olivier Hainque <hainque@adacore.com>
+
+ * config/i386/vxworks.h (DBX_REGISTER_NUMBER): Pick distinct
+ map for 64bits.
+ (TARGET_OS_CPP_BUILTINS): builtin_define CPU to X86_64 for 64bit
+ targets. Pick a default if no particular attempt applied.
+ (STACK_CHECK_PROTECT): Double for 64bit targets, which have
+ larger contexts.
+
2017-06-27 Jerome Lambourg <lambourg@adacore.com>
* config.gcc (i*86-wrs-vxworks7): Handle new acceptable triplet.
the SVR4 numbering. */
#undef DBX_REGISTER_NUMBER
-#define DBX_REGISTER_NUMBER(n) svr4_dbx_register_map[n]
+#define DBX_REGISTER_NUMBER(n) \
+ (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n])
#define TARGET_OS_CPP_BUILTINS() \
do \
builtin_define ("CPU=PENTIUM4"); \
builtin_define ("CPU_VARIANT=PENTIUM4"); \
} \
- } \
+ else if (TARGET_64BIT) \
+ builtin_define ("CPU=X86_64"); \
+ else \
+ builtin_define ("CPU=I80386"); \
+ } \
while (0)
#undef CPP_SPEC
#define STACK_CHECK_STATIC_BUILTIN 1
/* This platform supports the probing method of stack checking (RTP mode).
- 8K is reserved in the stack to propagate exceptions in case of overflow. */
+ 8K is reserved in the stack to propagate exceptions in case of overflow.
+ On 64-bit targets, we double that size. */
+#if TARGET_64BIT_DEFAULT
+#define STACK_CHECK_PROTECT 16384
+#else
#define STACK_CHECK_PROTECT 8192
+#endif