Commit 83087d65 by Jakub Jelinek Committed by Jakub Jelinek

re PR debug/82933 (valgrind error in set_cur_line_info_table with -g)

	PR debug/82933
	* run-rtl-passes.c: Include debug.h.
	(run_rtl_passes): Call debug_hooks->assembly_start.
	* dwarf2out.c (dwarf2out_assembly_start): Return early if invoked
	multiple times.

	* gcc.dg/rtl/x86_64/pr82933.c: New test.

From-SVN: r254987
parent 644f0132
2017-11-21 Jakub Jelinek <jakub@redhat.com> 2017-11-21 Jakub Jelinek <jakub@redhat.com>
PR debug/82933
* run-rtl-passes.c: Include debug.h.
(run_rtl_passes): Call debug_hooks->assembly_start.
* dwarf2out.c (dwarf2out_assembly_start): Return early if invoked
multiple times.
PR target/82981 PR target/82981
* internal-fn.c (expand_mul_overflow): Use OPTAB_WIDEN instead of * internal-fn.c (expand_mul_overflow): Use OPTAB_WIDEN instead of
OPTAB_DIRECT in calls to expand_simple_binop. OPTAB_DIRECT in calls to expand_simple_binop.
...@@ -27507,6 +27507,9 @@ dwarf2out_init (const char *filename ATTRIBUTE_UNUSED) ...@@ -27507,6 +27507,9 @@ dwarf2out_init (const char *filename ATTRIBUTE_UNUSED)
static void static void
dwarf2out_assembly_start (void) dwarf2out_assembly_start (void)
{ {
if (text_section_line_info)
return;
#ifndef DWARF2_LINENO_DEBUGGING_INFO #ifndef DWARF2_LINENO_DEBUGGING_INFO
ASM_GENERATE_INTERNAL_LABEL (text_section_label, TEXT_SECTION_LABEL, 0); ASM_GENERATE_INTERNAL_LABEL (text_section_label, TEXT_SECTION_LABEL, 0);
ASM_GENERATE_INTERNAL_LABEL (text_end_label, TEXT_END_LABEL, 0); ASM_GENERATE_INTERNAL_LABEL (text_end_label, TEXT_END_LABEL, 0);
......
...@@ -30,6 +30,7 @@ along with GCC; see the file COPYING3. If not see ...@@ -30,6 +30,7 @@ along with GCC; see the file COPYING3. If not see
#include "bitmap.h" #include "bitmap.h"
#include "df.h" #include "df.h"
#include "regs.h" #include "regs.h"
#include "debug.h" /* for debug_hooks. */
#include "insn-attr-common.h" /* for INSN_SCHEDULING. */ #include "insn-attr-common.h" /* for INSN_SCHEDULING. */
#include "insn-attr.h" /* for init_sched_attrs. */ #include "insn-attr.h" /* for init_sched_attrs. */
#include "run-rtl-passes.h" #include "run-rtl-passes.h"
...@@ -43,6 +44,9 @@ run_rtl_passes (char *initial_pass_name) ...@@ -43,6 +44,9 @@ run_rtl_passes (char *initial_pass_name)
cfun->pass_startwith = initial_pass_name; cfun->pass_startwith = initial_pass_name;
max_regno = max_reg_num (); max_regno = max_reg_num ();
/* cgraphunit.c normally handles this. */
(*debug_hooks->assembly_start) ();
/* Pass "expand" normally sets this up. */ /* Pass "expand" normally sets this up. */
#ifdef INSN_SCHEDULING #ifdef INSN_SCHEDULING
init_sched_attrs (); init_sched_attrs ();
......
2017-11-21 Jakub Jelinek <jakub@redhat.com>
PR debug/82933
* gcc.dg/rtl/x86_64/pr82933.c: New test.
2017-11-20 Eric Gallager <egall@gwmail.gwu.edu> 2017-11-20 Eric Gallager <egall@gwmail.gwu.edu>
PR preprocessor/81794 PR preprocessor/81794
......
/* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
/* { dg-options "-g" } */
#include "into-cfglayout.c"
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