* config/tc-hppa.c: Disable multiple $CODE$ subspace code. It
authorJeff Law <law@redhat.com>
Wed, 19 Jan 1994 00:21:16 +0000 (00:21 +0000)
committerJeff Law <law@redhat.com>
Wed, 19 Jan 1994 00:21:16 +0000 (00:21 +0000)
        confuses GDB for some unknown reason.
        * cofnig/obj-som.c: Likewise.

gas/ChangeLog
gas/config/obj-som.c
gas/config/tc-hppa.c

index 47c6e89ef27ce38b49346cc74f301a16b8ef772c..bac672cf3e4e1d70cdbb477dcac34ce14044f222 100644 (file)
@@ -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
index 77f63359eea7e7155ce19a0bb914ca5aad0c490b..80beab33b5169686ad6e28d10ab0cdd84e5c8740 100644 (file)
@@ -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
 }
index 90cea107af568a7fde891222ec570f9f2fdb2a79..7674fb429048a5245eb3bc5a9d9166a0336fd537 100644 (file)
@@ -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)");