public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* x86_64-vxworks* support, vxworks target files updates
@ 2017-06-27 13:45 Olivier Hainque
  0 siblings, 0 replies; only message in thread
From: Olivier Hainque @ 2017-06-27 13:45 UTC (permalink / raw)
  To: GCC Patches
  Cc: Olivier Hainque, Douglas B Rupp, Jerome Lambourg, Nathan Sidwell

[-- Attachment #1: Type: text/plain, Size: 636 bytes --]

Hello,

Minor updates to the x86 specific config files
for VxWorks, to account for 64bit ABIs.

Tested together with the previous patches in the
vx7 series, for x86_64-vxworks7 in particular.

Committing to mainline.

With Kind Regards,

Olivier


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.


[-- Attachment #2: 0007-support-for-x86-and-x86_64-vxworks7-vxworks-config-f.patch --]
[-- Type: application/octet-stream, Size: 1320 bytes --]

--- a/gcc/config/i386/vxworks.h
+++ b/gcc/config/i386/vxworks.h
@@ -34,7 +34,8 @@ along with GCC; see the file COPYING3.  If not see
    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							\
@@ -59,7 +60,11 @@ along with GCC; see the file COPYING3.  If not see
           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
@@ -91,5 +96,10 @@ along with GCC; see the file COPYING3.  If not see
 #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
-- 
1.7.10.4


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-06-27 13:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-27 13:45 x86_64-vxworks* support, vxworks target files updates Olivier Hainque

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).