diff options
author | Olivier Hainque <hainque@adacore.com> | 2017-11-22 17:30:07 +0000 |
---|---|---|
committer | Olivier Hainque <hainque@gcc.gnu.org> | 2017-11-22 17:30:07 +0000 |
commit | 824a2b3d8cb18e80ed11231ed57b4bf67134fcd0 (patch) | |
tree | 3b1188e58bf092fb933a2c014ca452c4215af9e1 /gcc | |
parent | e54675bbabc2ed8100b7055008818b391cbbabbb (diff) | |
download | gcc-824a2b3d8cb18e80ed11231ed57b4bf67134fcd0.zip gcc-824a2b3d8cb18e80ed11231ed57b4bf67134fcd0.tar.gz gcc-824a2b3d8cb18e80ed11231ed57b4bf67134fcd0.tar.bz2 |
vxworks.c (vxworks_override_options): Pick default dwarf version from macro value, VXWORKS_DWARF_VERSION_DEFAULT.
2017-11-22 Olivier Hainque <hainque@adacore.com>
* config/vxworks.c (vxworks_override_options): Pick default
dwarf version from macro value, VXWORKS_DWARF_VERSION_DEFAULT.
* config/vxworks.h: Define VXWORKS_DWARF_VERSION_DEFAULT and
DWARF_GNAT_ENCODINGS_DEFAULT.
* config/vxworksae.h: Likewise.
From-SVN: r255069
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/vxworks.c | 8 | ||||
-rw-r--r-- | gcc/config/vxworks.h | 10 | ||||
-rw-r--r-- | gcc/config/vxworksae.h | 9 |
4 files changed, 32 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f800120..74acbcc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2017-11-22 Olivier Hainque <hainque@adacore.com> + + * config/vxworks.c (vxworks_override_options): Pick default + dwarf version from macro value, VXWORKS_DWARF_VERSION_DEFAULT. + * config/vxworks.h: Define VXWORKS_DWARF_VERSION_DEFAULT and + DWARF_GNAT_ENCODINGS_DEFAULT. + * config/vxworksae.h: Likewise. + 2017-11-22 Marc Glisse <marc.glisse@inria.fr> PR tree-optimization/83104 diff --git a/gcc/config/vxworks.c b/gcc/config/vxworks.c index 944cc1d..1d90368 100644 --- a/gcc/config/vxworks.c +++ b/gcc/config/vxworks.c @@ -150,11 +150,13 @@ vxworks_override_options (void) if (flag_pic && !TARGET_VXWORKS_RTP) error ("PIC is only supported for RTPs"); - /* Default to strict dwarf-2 to prevent potential difficulties observed with - non-gdb debuggers on extensions > 2. */ + /* VxWorks comes with non-gdb debuggers which only support strict + dwarf up to certain version. Default dwarf control to friendly + values for these. */ + if (!global_options_set.x_dwarf_strict) dwarf_strict = 1; if (!global_options_set.x_dwarf_version) - dwarf_version = 2; + dwarf_version = VXWORKS_DWARF_VERSION_DEFAULT; } diff --git a/gcc/config/vxworks.h b/gcc/config/vxworks.h index 62149d4..29a6cb0 100644 --- a/gcc/config/vxworks.h +++ b/gcc/config/vxworks.h @@ -202,3 +202,13 @@ extern void vxworks_asm_out_destructor (rtx symbol, int priority); /* The diab linker does not handle .gnu_attribute sections. */ #undef HAVE_AS_GNU_ATTRIBUTE + +/* Default dwarf control values, for non-gdb debuggers that come with + VxWorks. */ + +#undef VXWORKS_DWARF_VERSION_DEFAULT +#define VXWORKS_DWARF_VERSION_DEFAULT (TARGET_VXWORKS7 ? 4 : 2) + +#undef DWARF_GNAT_ENCODINGS_DEFAULT +#define DWARF_GNAT_ENCODINGS_DEFAULT \ + (TARGET_VXWORKS7 ? DWARF_GNAT_ENCODINGS_MINIMAL : DWARF_GNAT_ENCODINGS_ALL) diff --git a/gcc/config/vxworksae.h b/gcc/config/vxworksae.h index 3b0b652..8caa7dd 100644 --- a/gcc/config/vxworksae.h +++ b/gcc/config/vxworksae.h @@ -75,3 +75,12 @@ along with GCC; see the file COPYING3. If not see #undef VXWORKS_OVERRIDE_OPTIONS #define VXWORKS_OVERRIDE_OPTIONS vxworks_override_options () extern void vxworks_override_options (void); + +/* Default dwarf control values, for non-gdb debuggers that come with + VxWorks. */ + +#undef VXWORKS_DWARF_VERSION_DEFAULT +#define VXWORKS_DWARF_VERSION_DEFAULT 2 + +#undef DWARF_GNAT_ENCODINGS_DEFAULT +#define DWARF_GNAT_ENCODINGS_DEFAULT DWARF_GNAT_ENCODINGS_ALL |