From 2f156c92bdff30019f890307d7276ba6813fec24 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Wed, 19 Jan 1994 00:21:16 +0000 Subject: [PATCH] * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It confuses GDB for some unknown reason. * cofnig/obj-som.c: Likewise. --- gas/ChangeLog | 6 ++++++ gas/config/obj-som.c | 5 +++++ gas/config/tc-hppa.c | 8 ++++++++ 3 files changed, 19 insertions(+) diff --git a/gas/ChangeLog b/gas/ChangeLog index 47c6e89ef2..bac672cf3e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +Tue Jan 18 16:19:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu) + + * config/tc-hppa.c: Disable multiple $CODE$ subspace code. It + confuses GDB for some unknown reason. + * cofnig/obj-som.c: Likewise. + Tue Jan 18 19:05:32 1994 Ken Raeburn (raeburn@cujo.cygnus.com) * literal.c (add_to_literal_pool): Handle duplicates of values diff --git a/gas/config/obj-som.c b/gas/config/obj-som.c index 77f63359ee..80beab33b5 100644 --- a/gas/config/obj-som.c +++ b/gas/config/obj-som.c @@ -206,6 +206,7 @@ adjust_stab_sections (abfd, sec, xxx) bfd_h_put_32 (abfd, (bfd_vma) strsz, (bfd_byte *) p + 8); } +#if 0 /* Adjust the VMA address for each $CODE$ subspace. */ static void adjust_code_sections (abfd, sec, xxx) @@ -221,6 +222,7 @@ adjust_code_sections (abfd, sec, xxx) bfd_set_section_vma (stdoutput, sec, size_so_far); size_so_far += bfd_get_section_size_before_reloc (sec); } +#endif /* Called late in the asssembly phase to adjust the special stab entry and to set the starting address for each code subspace. */ @@ -229,5 +231,8 @@ void som_frob_file () { bfd_map_over_sections (stdoutput, adjust_stab_sections, (PTR) 0); +#if 0 + See comment in tc-hppa.c:pa_proc about GDB lossage bfd_map_over_sections (stdoutput, adjust_code_sections, (PTR) 0); +#endif } diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c index 90cea107af..7674fb4290 100644 --- a/gas/config/tc-hppa.c +++ b/gas/config/tc-hppa.c @@ -4866,6 +4866,11 @@ pa_proc (unused) callinfo_found = FALSE; within_procedure = TRUE; +#if 0 + Enabling this code creates severe problems with GDB. It appears as if + inserting linker stubs between functions within a single .o makes GDB + blow chunks. + /* Create a new CODE subspace for each procedure if we are not using space/subspace aliases. */ if (!USE_ALIASES && call_info_root != NULL) @@ -4892,6 +4897,7 @@ pa_proc (unused) obj_set_subsection_attributes (seg, current_space->sd_seg, 0x2c, 24, 0); #endif } +#endif /* Create another call_info structure. */ call_info = (struct call_info *) xmalloc (sizeof (struct call_info)); @@ -4931,6 +4937,7 @@ pa_proc (unused) { last_call_info->start_symbol = label_symbol->lss_label; label_symbol->lss_label->bsym->flags |= BSF_FUNCTION; +#if 0 if (! USE_ALIASES) { /* The label was defined in a different segment. Fix that @@ -4941,6 +4948,7 @@ pa_proc (unused) - frag_now->fr_literal)); last_call_info->start_symbol->sy_frag = frag_now; } +#endif } else as_bad ("Missing function name for .PROC (corrupted label chain)");