diff options
author | Rasmus Villemoes <rv@rasmusvillemoes.dk> | 2018-08-21 10:52:40 +0200 |
---|---|---|
committer | Rasmus Villemoes <villemoes@gcc.gnu.org> | 2018-08-21 08:52:40 +0000 |
commit | eae016fc707fac3bf11d671f7fd40b213ee5141b (patch) | |
tree | 6b5dddb202a9fde183c8877500987073ef90b19a /gcc/config/vxworks.h | |
parent | ace193dc4773159a2c545ab6ca80842c56019e3a (diff) | |
download | gcc-eae016fc707fac3bf11d671f7fd40b213ee5141b.zip gcc-eae016fc707fac3bf11d671f7fd40b213ee5141b.tar.gz gcc-eae016fc707fac3bf11d671f7fd40b213ee5141b.tar.bz2 |
vxworks: don't define vxworks_asm_out_constructor when using .init_array
When the compiler is configured with --enable-initfini-array,
config/initfini-array.h gets included after config/vxworks.h by tm.h, so
the definitions of TARGET_ASM_CONSTRUTOR/TARGET_ASM_DESTRUCTOR in
vxworks.h get undone in initfini-array.h. Hence, we might as well not
define the vxworks_asm_out_* functions.
From-SVN: r263692
Diffstat (limited to 'gcc/config/vxworks.h')
-rw-r--r-- | gcc/config/vxworks.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/vxworks.h b/gcc/config/vxworks.h index 4c2d983..8677386 100644 --- a/gcc/config/vxworks.h +++ b/gcc/config/vxworks.h @@ -150,6 +150,7 @@ extern void vxworks_override_options (void); #define SUPPORTS_INIT_PRIORITY \ (TARGET_VXWORKS_RTP || HAVE_INITFINI_ARRAY_SUPPORT) +#if !HAVE_INITFINI_ARRAY_SUPPORT /* VxWorks requires special handling of constructors and destructors. All VxWorks configurations must use these functions. */ #undef TARGET_ASM_CONSTRUCTOR @@ -158,6 +159,7 @@ extern void vxworks_override_options (void); #define TARGET_ASM_DESTRUCTOR vxworks_asm_out_destructor extern void vxworks_asm_out_constructor (rtx symbol, int priority); extern void vxworks_asm_out_destructor (rtx symbol, int priority); +#endif /* Override the vxworks-dummy.h definitions. TARGET_VXWORKS_RTP is defined by vxworks.opt. */ |