From 333b2f3146be914cdf791e542bef5584671a839c Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sun, 2 Oct 2016 21:31:57 +0200 Subject: [PATCH] dwarf2out.c (output_fde, [...]): Use MAX_ARTIFICIAL_LABEL_BYTES as char array sizes for... * dwarf2out.c (output_fde, output_call_frame_info, dwarf2out_do_cfi_startproc, set_indirect_string, gen_internal_sym, output_die, output_line_info): Use MAX_ARTIFICIAL_LABEL_BYTES as char array sizes for ASM_GENERATE_INTERNAL_LABEL output. From-SVN: r240701 --- gcc/ChangeLog | 8 ++++++++ gcc/dwarf2out.c | 16 +++++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 90850713d4e..05e527d406b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2016-10-02 Jakub Jelinek + + * dwarf2out.c (output_fde, output_call_frame_info, + dwarf2out_do_cfi_startproc, set_indirect_string, + gen_internal_sym, output_die, output_line_info): Use + MAX_ARTIFICIAL_LABEL_BYTES as char array sizes for + ASM_GENERATE_INTERNAL_LABEL output. + 2016-10-01 Richard Biener PR middle-end/77798 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 90e68e22b5b..7b5acda5f7c 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -567,7 +567,7 @@ output_fde (dw_fde_ref fde, bool for_eh, bool second, { const char *begin, *end; static unsigned int j; - char l1[20], l2[20]; + char l1[MAX_ARTIFICIAL_LABEL_BYTES], l2[MAX_ARTIFICIAL_LABEL_BYTES]; targetm.asm_out.emit_unwind_label (asm_out_file, fde->decl, for_eh, /* empty */ 0); @@ -722,7 +722,8 @@ output_call_frame_info (int for_eh) unsigned int i; dw_fde_ref fde; dw_cfi_ref cfi; - char l1[20], l2[20], section_start_label[20]; + char l1[MAX_ARTIFICIAL_LABEL_BYTES], l2[MAX_ARTIFICIAL_LABEL_BYTES]; + char section_start_label[MAX_ARTIFICIAL_LABEL_BYTES]; bool any_lsda_needed = false; char augmentation[6]; int augmentation_size; @@ -966,7 +967,7 @@ dwarf2out_do_cfi_startproc (bool second) if (crtl->uses_eh_lsda) { - char lab[20]; + char lab[MAX_ARTIFICIAL_LABEL_BYTES]; enc = ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/0, /*global=*/0); ASM_GENERATE_INTERNAL_LABEL (lab, second ? "LLSDAC" : "LLSDA", @@ -4128,7 +4129,7 @@ AT_string (dw_attr_node *a) static void set_indirect_string (struct indirect_string_node *node) { - char label[32]; + char label[MAX_ARTIFICIAL_LABEL_BYTES]; /* Already indirect is a no op. */ if (node->form == DW_FORM_strp || node->form == DW_FORM_GNU_str_index) { @@ -7076,7 +7077,7 @@ is_template_instantiation (dw_die_ref die) static char * gen_internal_sym (const char *prefix) { - char buf[256]; + char buf[MAX_ARTIFICIAL_LABEL_BYTES]; ASM_GENERATE_INTERNAL_LABEL (buf, prefix, label_num++); return xstrdup (buf); @@ -9382,7 +9383,7 @@ output_die (dw_die_ref die) case dw_val_class_fde_ref: { - char l1[20]; + char l1[MAX_ARTIFICIAL_LABEL_BYTES]; ASM_GENERATE_INTERNAL_LABEL (l1, FDE_LABEL, a->dw_attr_val.v.val_fde_index * 2); @@ -10710,7 +10711,8 @@ output_one_line_info_table (dw_line_info_table *table) static void output_line_info (bool prologue_only) { - char l1[20], l2[20], p1[20], p2[20]; + char l1[MAX_ARTIFICIAL_LABEL_BYTES], l2[MAX_ARTIFICIAL_LABEL_BYTES]; + char p1[MAX_ARTIFICIAL_LABEL_BYTES], p2[MAX_ARTIFICIAL_LABEL_BYTES]; /* We don't support DWARFv5 line tables yet. */ int ver = dwarf_version < 5 ? dwarf_version : 4; bool saw_one = false;