Commit 1823c4f6 by Richard Biener Committed by Richard Biener

common.opt (feliminate-dwarf2-dups): Ignore.

2017-08-22  Richard Biener  <rguenther@suse.de>

	* common.opt (feliminate-dwarf2-dups): Ignore.
	* doc/invoke.texi (feliminate-dwarf2-dups): Remove documentation.
	* dwarf2out.c (push_new_compile_unit, pop_compile_unit,
	same_die_p_wrap, compute_section_prefix,
	is_symbol_die, assign_symbol_names, break_out_includes): Remove.
	(comdat_symbol_id, comdat_symbol_number): Likewise.
	(cu_hash_table_entry, cu_hash_table_entry_hasher, cu_hash_type):
	Likewise.
	(check_duplicate_cu, record_comdat_symbol_number): Likewise.
	(output_die): Mark unreachable path unreachable.
	(dwarf2out_start_source_file): Do not create DW_TAG_GNU_BINCL.
	(dwarf2out_end_source_file): Do not create DW_TAG_GNU_EINCL.
	(dwarf2out_init): Remove code handling flag_eliminate_dwarf2_dups.
	(dwarf2out_early_finish): Likewise.

	* g++.dg/debug/dwarf2/dwarf2-1.C: Remove -feliminate-dwarf2-dups.
	* g++.dg/debug/dwarf2/dwarf2-2.C: Likewise.
	* g++.dg/debug/dwarf2/pr46123-2.C: Likewise.
	* g++.dg/debug/dwarf2/typedef5.C: Likewise.
	* gcc.dg/debug/dwarf2/dwarf2-3.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf2-3.h: Likewise.
	* gcc.dg/debug/dwarf2/dups-types.c: Remove.
	* gcc.dg/debug/dwarf2/dups-types.h: Likewise.

From-SVN: r251262
parent 4ea9e1a5
2017-08-22 Richard Biener <rguenther@suse.de>
* common.opt (feliminate-dwarf2-dups): Ignore.
* doc/invoke.texi (feliminate-dwarf2-dups): Remove documentation.
* dwarf2out.c (push_new_compile_unit, pop_compile_unit,
same_die_p_wrap, compute_section_prefix,
is_symbol_die, assign_symbol_names, break_out_includes): Remove.
(comdat_symbol_id, comdat_symbol_number): Likewise.
(cu_hash_table_entry, cu_hash_table_entry_hasher, cu_hash_type):
Likewise.
(check_duplicate_cu, record_comdat_symbol_number): Likewise.
(output_die): Mark unreachable path unreachable.
(dwarf2out_start_source_file): Do not create DW_TAG_GNU_BINCL.
(dwarf2out_end_source_file): Do not create DW_TAG_GNU_EINCL.
(dwarf2out_init): Remove code handling flag_eliminate_dwarf2_dups.
(dwarf2out_early_finish): Likewise.
2017-08-22 Aldy Hernandez <aldyh@redhat.com>
* wide-int.h (hwi_with_prec::hwi_with_prec): Sign extend.
......
......@@ -1303,8 +1303,8 @@ Common Report Var(flag_early_inlining) Init(1) Optimization
Perform early inlining.
feliminate-dwarf2-dups
Common Report Var(flag_eliminate_dwarf2_dups)
Perform DWARF duplicate elimination.
Common Ignore
Does nothing. Preserved for backward compatibility.
fipa-sra
Common Report Var(flag_ipa_sra) Init(0) Optimization
......
......@@ -347,7 +347,7 @@ Objective-C and Objective-C++ Dialects}.
-gcolumn-info -gno-column-info @gol
-gvms -gxcoff -gxcoff+ -gz@r{[}=@var{type}@r{]} @gol
-fdebug-prefix-map=@var{old}=@var{new} -fdebug-types-section @gol
-feliminate-dwarf2-dups -fno-eliminate-unused-debug-types @gol
-fno-eliminate-unused-debug-types @gol
-femit-struct-debug-baseonly -femit-struct-debug-reduced @gol
-femit-struct-debug-detailed@r{[}=@var{spec-list}@r{]} @gol
-feliminate-unused-debug-symbols -femit-class-debug-always @gol
......@@ -6834,8 +6834,8 @@ for maximum benefit.
GCC no longer supports DWARF Version 1, which is substantially
different than Version 2 and later. For historical reasons, some
other DWARF-related options (including @option{-feliminate-dwarf2-dups}
and @option{-fno-dwarf2-cfi-asm}) retain a reference to DWARF Version 2
other DWARF-related options such as
@option{-fno-dwarf2-cfi-asm}) retain a reference to DWARF Version 2
in their names, but apply to all currently-supported versions of DWARF.
@item -gstabs
......@@ -7027,12 +7027,6 @@ writing compressed debug sections, the option is rejected. Otherwise,
if the assembler does not support them, @option{-gz} is silently ignored
when producing object files.
@item -feliminate-dwarf2-dups
@opindex feliminate-dwarf2-dups
Compress DWARF debugging information by eliminating duplicated
information about each symbol. This option only makes sense when
generating DWARF debugging information.
@item -femit-struct-debug-baseonly
@opindex femit-struct-debug-baseonly
Emit debug information for struct-like types
2017-08-22 Richard Biener <rguenther@suse.de>
* g++.dg/debug/dwarf2/dwarf2-1.C: Remove -feliminate-dwarf2-dups.
* g++.dg/debug/dwarf2/dwarf2-2.C: Likewise.
* g++.dg/debug/dwarf2/pr46123-2.C: Likewise.
* g++.dg/debug/dwarf2/typedef5.C: Likewise.
* gcc.dg/debug/dwarf2/dwarf2-3.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf2-3.h: Likewise.
* gcc.dg/debug/dwarf2/dups-types.c: Remove.
* gcc.dg/debug/dwarf2/dups-types.h: Likewise.
2017-08-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/81296
......
/* { dg-bogus "-feliminate-dwarf2-dups is broken for C\\+\\+, ignoring" "broken -feliminate-dwarf2-dups" { xfail *-*-* } } */
// Copyright (C) 2006 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 6 Jan 2006 <nathan@codesourcery.com>
// PR 24824
// Origin: wanderer@rsu.ru
// { dg-options "-gdwarf -feliminate-dwarf2-dups" }
// { dg-options "-gdwarf" }
namespace N
{
......
/* { dg-bogus "-feliminate-dwarf2-dups is broken for C\\+\\+, ignoring" "broken -feliminate-dwarf2-dups" { xfail *-*-* } } */
// PR debug/27057
// { dg-do compile }
// { dg-options "-gdwarf -feliminate-dwarf2-dups" }
// { dg-options "-gdwarf" }
namespace N
{
......
/* { dg-bogus "-feliminate-dwarf2-dups is broken for C\\+\\+, ignoring" "broken -feliminate-dwarf2-dups" { xfail *-*-* } } */
// PR debug/46123
// { dg-do compile }
// { dg-options "-g -feliminate-dwarf2-dups" }
// { dg-options "-g" }
struct foo
{
......
/* { dg-bogus "-feliminate-dwarf2-dups is broken for C\\+\\+, ignoring" "broken -feliminate-dwarf2-dups" { xfail *-*-* } } */
// Origin: PR debug/46101
// { dg-options "-gdwarf-2 -feliminate-dwarf2-dups" }
// { dg-options "-gdwarf-2" }
// { dg-do compile }
typedef struct
......
/* Test that these two options can work together. */
/* { dg-options "-gdwarf-4 -dA -feliminate-dwarf2-dups -fdebug-types-section" } */
/* { dg-final { scan-assembler "DW.dups_types\.h\[^)\]*. DW_TAG_typedef" } } */
/* { dg-final { scan-assembler "DW_TAG_type_unit" } } */
#include "dups-types.h"
A2 a;
struct A
{
int i;
int j;
};
typedef struct A A2;
extern A2 a;
A2 f(A2);
/* Test -feliminate-dwarf2-dups */
/* Contributed by Devang Patel <dpatel@apple.com> */
/* { dg-do compile } */
/* { dg-options "-gdwarf -feliminate-dwarf2-dups" } */
/* { dg-options "-gdwarf" } */
#include "dwarf2-3.h"
......
/* Test -feliminate-dwarf2-dups */
/* Contributed by Devang Patel <dpatel@apple.com> */
struct point
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment