Don't use DWARF 4 on Solaris

* config/sol2.c (solaris_override_options): New function.
	* config/sol2-protos.h (solaris_override_options): Declare.
	* config/sol2.h (SUBTARGET_OVERRIDE_OPTIONS): Define.

From-SVN: r187230
This commit is contained in:
Rainer Orth 2012-05-07 11:07:31 +00:00 committed by Rainer Orth
parent 1e3733905b
commit fe551ce4b1
4 changed files with 25 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2012-05-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sol2.c (solaris_override_options): New function.
* config/sol2-protos.h (solaris_override_options): Declare.
* config/sol2.h (SUBTARGET_OVERRIDE_OPTIONS): Define.
2012-05-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Return

View File

@ -1,6 +1,6 @@
/* Operating system specific prototypes to be used when targeting GCC for any
Solaris 2 system.
Copyright 2004, 2007, 2010, 2011 Free Software Foundation, Inc.
Copyright 2004, 2007, 2010, 2011, 2012 Free Software Foundation, Inc.
This file is part of GCC.
@ -24,6 +24,7 @@ extern void solaris_elf_asm_comdat_section (const char *, unsigned int, tree);
extern void solaris_file_end (void);
extern void solaris_insert_attributes (tree, tree *);
extern void solaris_output_init_fini (FILE *, tree);
extern void solaris_override_options (void);
/* In sol2-c.c. */
extern void solaris_register_pragmas (void);

View File

@ -1,5 +1,6 @@
/* General Solaris system support.
Copyright (C) 2004, 2005 , 2007, 2010, 2011 Free Software Foundation, Inc.
Copyright (C) 2004, 2005 , 2007, 2010, 2011, 2012
Free Software Foundation, Inc.
Contributed by CodeSourcery, LLC.
This file is part of GCC.
@ -282,3 +283,12 @@ solaris_file_end (void)
htab_traverse (solaris_comdat_htab, solaris_define_comdat_signature, NULL);
}
void
solaris_override_options (void)
{
/* Don't emit DWARF3/4 unless specifically selected. Solaris ld cannot
handle CIE version 3 in .eh_frame. */
if (!global_options_set.x_dwarf_version)
dwarf_version = 2;
}

View File

@ -99,6 +99,12 @@ along with GCC; see the file COPYING3. If not see
TARGET_SUB_OS_CPP_BUILTINS(); \
} while (0)
#define SUBTARGET_OVERRIDE_OPTIONS \
do { \
solaris_override_options (); \
} while (0)
/* It's safe to pass -s always, even if -g is not used. Those options are
handled by both Sun as and GNU as. */
#define ASM_SPEC_BASE \