2003-09-12 Andrew Cagney <cagney@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Fri, 12 Sep 2003 18:40:18 +0000 (18:40 +0000)
committerAndrew Cagney <cagney@redhat.com>
Fri, 12 Sep 2003 18:40:18 +0000 (18:40 +0000)
* objfiles.h (struct entry_info): Deprecate "entry_file_lowpc" and
"entry_file_highpc".  Update comments.
* defs.h (deprecated_inside_entry_file): Rename
"inside_entry_file".
* blockframe.c (deprecated_inside_entry_file): Rename
"inside_entry_file".
* frame.c (get_prev_frame): Update.  Use if 0 instead of #if 0.
* vax-tdep.c (vax_frame_chain): Update.
* sh64-tdep.c (sh64_frame_chain): Update.
* sh-tdep.c (sh_frame_chain): Update.
* rs6000-tdep.c (rs6000_frame_chain): Update.
* ns32k-tdep.c (ns32k_frame_chain): Update.
* mips-tdep.c (mips_frame_chain): Update.
* m68hc11-tdep.c (m68hc11_frame_this_id): Update.
* m32r-tdep.c (m32r_frame_this_id): Update.
* i386-interix-tdep.c (i386_interix_frame_chain_valid): Update.
* frv-tdep.c (frv_frame_this_id): Update.
* d10v-tdep.c (d10v_frame_this_id): Update.
* cris-tdep.c (cris_frame_chain): Update.
* blockframe.c (legacy_frame_chain_valid): Update.
* avr-tdep.c (avr_frame_this_id): Update.
* arm-tdep.c (arm_prologue_this_id): Update.
* alpha-tdep.c (alpha_heuristic_frame_this_id): Update.
* objfiles.c (objfile_relocate): Update.
* mipsread.c (mipscoff_symfile_read): Update.
(mipscoff_symfile_read): Update.
* mdebugread.c (parse_partial_symbols): Update.
* dwarfread.c (read_file_scope): Update.
* dwarf2read.c (read_file_scope): Update.
* dbxread.c (read_dbx_symtab): Update.
(read_dbx_symtab): Update.
* coffread.c (complete_symtab): Update.

28 files changed:
gdb/ChangeLog
gdb/alpha-tdep.c
gdb/arm-tdep.c
gdb/avr-tdep.c
gdb/blockframe.c
gdb/coffread.c
gdb/cris-tdep.c
gdb/d10v-tdep.c
gdb/dbxread.c
gdb/defs.h
gdb/dwarf2read.c
gdb/dwarfread.c
gdb/frame.c
gdb/frv-tdep.c
gdb/i386-interix-tdep.c
gdb/m32r-tdep.c
gdb/m68hc11-tdep.c
gdb/mdebugread.c
gdb/mips-tdep.c
gdb/mipsread.c
gdb/ns32k-tdep.c
gdb/objfiles.c
gdb/objfiles.h
gdb/rs6000-tdep.c
gdb/sh-tdep.c
gdb/sh64-tdep.c
gdb/symfile.c
gdb/vax-tdep.c

index c999b83cccea372835ce8b503294240e72281791..faca64fa6ca34fc4c99a6324a6244d1712a2f099 100644 (file)
@@ -1,3 +1,38 @@
+2003-09-12  Andrew Cagney  <cagney@redhat.com>
+
+       * objfiles.h (struct entry_info): Deprecate "entry_file_lowpc" and
+       "entry_file_highpc".  Update comments.
+       * defs.h (deprecated_inside_entry_file): Rename
+       "inside_entry_file".
+       * blockframe.c (deprecated_inside_entry_file): Rename
+       "inside_entry_file".
+       * frame.c (get_prev_frame): Update.  Use if 0 instead of #if 0.
+       * vax-tdep.c (vax_frame_chain): Update.
+       * sh64-tdep.c (sh64_frame_chain): Update.
+       * sh-tdep.c (sh_frame_chain): Update.
+       * rs6000-tdep.c (rs6000_frame_chain): Update.
+       * ns32k-tdep.c (ns32k_frame_chain): Update.
+       * mips-tdep.c (mips_frame_chain): Update.
+       * m68hc11-tdep.c (m68hc11_frame_this_id): Update.
+       * m32r-tdep.c (m32r_frame_this_id): Update.
+       * i386-interix-tdep.c (i386_interix_frame_chain_valid): Update.
+       * frv-tdep.c (frv_frame_this_id): Update.
+       * d10v-tdep.c (d10v_frame_this_id): Update.
+       * cris-tdep.c (cris_frame_chain): Update.
+       * blockframe.c (legacy_frame_chain_valid): Update.
+       * avr-tdep.c (avr_frame_this_id): Update.
+       * arm-tdep.c (arm_prologue_this_id): Update.
+       * alpha-tdep.c (alpha_heuristic_frame_this_id): Update.
+       * objfiles.c (objfile_relocate): Update.
+       * mipsread.c (mipscoff_symfile_read): Update.
+       (mipscoff_symfile_read): Update.
+       * mdebugread.c (parse_partial_symbols): Update.
+       * dwarfread.c (read_file_scope): Update.
+       * dwarf2read.c (read_file_scope): Update.
+       * dbxread.c (read_dbx_symtab): Update.
+       (read_dbx_symtab): Update.
+       * coffread.c (complete_symtab): Update.
+
 2003-09-12  Jeff Johnston  <jjohnstn@redhat.com>
 
        * top.c (quit_target): New static helper function.
index df55bfbed3b99f539281626acb0e6d25331cace0..4c3e471c84b9408e08834b6d6d15b60850360903 100644 (file)
@@ -1138,7 +1138,7 @@ alpha_heuristic_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (inside_entry_file (info->start_pc))
+  if (deprecated_inside_entry_file (info->start_pc))
     return;
 
   *this_id = frame_id_build (info->vfp, info->start_pc);
index 91872072a659e0ce65fb1bd46ae44124ad831c27..9999a60ea2e8dd3e127ce82ca72bd8333fd7e072 100644 (file)
@@ -970,7 +970,7 @@ arm_prologue_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (func <= LOWEST_PC || inside_entry_file (func))
+  if (func <= LOWEST_PC || deprecated_inside_entry_file (func))
     return;
 
   /* If we've hit a wall, stop.  */
index 2a4bf6f16f6dcc6ff3a9e4b24df5e01321033468..90bf9102ebe1e0aca67376793f6df5401d584ce2 100644 (file)
@@ -972,7 +972,7 @@ avr_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (inside_entry_file (func))
+  if (deprecated_inside_entry_file (func))
     return;
 
   /* Hopefully the prologue analysis either correctly determined the
index f431b50a787b91a2bd35d244ca70be09491556c3..43edc31a70a42c113a558d513d3e721e0bed81be 100644 (file)
@@ -53,7 +53,7 @@ void _initialize_blockframe (void);
    A PC of zero is always considered to be the bottom of the stack. */
 
 int
-inside_entry_file (CORE_ADDR addr)
+deprecated_inside_entry_file (CORE_ADDR addr)
 {
   if (addr == 0)
     return 1;
@@ -68,8 +68,8 @@ inside_entry_file (CORE_ADDR addr)
       if (DEPRECATED_PC_IN_CALL_DUMMY (addr, 0, 0))
        return 0;
     }
-  return (addr >= symfile_objfile->ei.entry_file_lowpc &&
-         addr < symfile_objfile->ei.entry_file_highpc);
+  return (addr >= symfile_objfile->ei.deprecated_entry_file_lowpc &&
+         addr < symfile_objfile->ei.deprecated_entry_file_highpc);
 }
 
 /* Test a specified PC value to see if it is in the range of addresses
@@ -611,7 +611,7 @@ legacy_frame_chain_valid (CORE_ADDR fp, struct frame_info *fi)
   /* NOTE/drow 2002-12-25: should there be a way to disable this check?  It
      assumes a single small entry file, and the way some debug readers (e.g.
      dbxread) figure out which object is the entry file is somewhat hokey.  */
-  if (inside_entry_file (frame_pc_unwind (fi)))
+  if (deprecated_inside_entry_file (frame_pc_unwind (fi)))
       return 0;
 
   return 1;
index 152ec339caf5681e690152959890d50040e3c7de..ac71f96dd03b6482f80adadc0d8eeb2cf2baef89 100644 (file)
@@ -391,8 +391,8 @@ complete_symtab (char *name, CORE_ADDR start_addr, unsigned int size)
   if (current_objfile->ei.entry_point >= current_source_start_addr &&
       current_objfile->ei.entry_point < current_source_end_addr)
     {
-      current_objfile->ei.entry_file_lowpc = current_source_start_addr;
-      current_objfile->ei.entry_file_highpc = current_source_end_addr;
+      current_objfile->ei.deprecated_entry_file_lowpc = current_source_start_addr;
+      current_objfile->ei.deprecated_entry_file_highpc = current_source_end_addr;
     }
 }
 
index 1b19999589962d9239c5f691f2c652143df40aab..3e5bfe9d9830f17d58a4484c10b339ed2f84b899 100644 (file)
@@ -1248,7 +1248,7 @@ cris_frame_chain (struct frame_info *fi)
     {
       return get_frame_base (fi);
     }
-  else if (!inside_entry_file (get_frame_pc (fi)))
+  else if (!deprecated_inside_entry_file (get_frame_pc (fi)))
     {
       return read_memory_unsigned_integer (get_frame_base (fi), 4);
     }
index ac52ab615f98c76bf5587acd4053e8010a3c0d91..574ff4ddb75fd25e5fe49f4f6a5af099685d32d4 100644 (file)
@@ -1405,7 +1405,7 @@ d10v_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (func <= IMEM_START || inside_entry_file (func))
+  if (func <= IMEM_START || deprecated_inside_entry_file (func))
     return;
 
   /* Hopefully the prologue analysis either correctly determined the
index 61c78c464576a7e8ef5d623bdad758e36bdc1bf3..52cf14987d1280db753bed38f32ee5099b7c34a9 100644 (file)
@@ -1450,8 +1450,8 @@ read_dbx_symtab (struct objfile *objfile)
            if (objfile->ei.entry_point < nlist.n_value &&
                objfile->ei.entry_point >= last_o_file_start)
              {
-               objfile->ei.entry_file_lowpc = last_o_file_start;
-               objfile->ei.entry_file_highpc = nlist.n_value;
+               objfile->ei.deprecated_entry_file_lowpc = last_o_file_start;
+               objfile->ei.deprecated_entry_file_highpc = nlist.n_value;
              }
            if (past_first_source_file && pst
                /* The gould NP1 uses low values for .o and -l symbols
@@ -2214,8 +2214,8 @@ read_dbx_symtab (struct objfile *objfile)
       && objfile->ei.entry_point < nlist.n_value
       && objfile->ei.entry_point >= last_o_file_start)
     {
-      objfile->ei.entry_file_lowpc = last_o_file_start;
-      objfile->ei.entry_file_highpc = nlist.n_value;
+      objfile->ei.deprecated_entry_file_lowpc = last_o_file_start;
+      objfile->ei.deprecated_entry_file_highpc = nlist.n_value;
     }
 
   if (pst)
index 39b27cb94775476df5f3bbad644f77b2d0818200..842f4d8b430e8d45f485c4b73a4f9a9896e6dfb5 100644 (file)
@@ -303,7 +303,7 @@ struct breakpoint;
 
 extern int inside_entry_func (CORE_ADDR);
 
-extern int inside_entry_file (CORE_ADDR addr);
+extern int deprecated_inside_entry_file (CORE_ADDR addr);
 
 extern int inside_main_func (CORE_ADDR pc);
 
index b432f12f3fe9d710551308a84f56b913b7ddbfa1..a7435cc4ddd35de8547e6e7b404d9c4e4107d817 100644 (file)
@@ -2039,8 +2039,8 @@ read_file_scope (struct die_info *die, struct objfile *objfile,
   if (objfile->ei.entry_point >= lowpc &&
       objfile->ei.entry_point < highpc)
     {
-      objfile->ei.entry_file_lowpc = lowpc;
-      objfile->ei.entry_file_highpc = highpc;
+      objfile->ei.deprecated_entry_file_lowpc = lowpc;
+      objfile->ei.deprecated_entry_file_highpc = highpc;
     }
 
   attr = dwarf_attr (die, DW_AT_language);
index e6f2a2e6b7ef546857f3ac874046823c9b6e0c55..6f1c76ae96fb22a9350f005a649b5f1e27490349 100644 (file)
@@ -1868,8 +1868,8 @@ read_file_scope (struct dieinfo *dip, char *thisdie, char *enddie,
   if (objfile->ei.entry_point >= dip->at_low_pc &&
       objfile->ei.entry_point < dip->at_high_pc)
     {
-      objfile->ei.entry_file_lowpc = dip->at_low_pc;
-      objfile->ei.entry_file_highpc = dip->at_high_pc;
+      objfile->ei.deprecated_entry_file_lowpc = dip->at_low_pc;
+      objfile->ei.deprecated_entry_file_highpc = dip->at_high_pc;
     }
   set_cu_language (dip);
   if (dip->at_producer != NULL)
index 31cb6c5fd9fc2cd72c28d0fb6f2b38bb836661cd..6e0102699f6faf0d665fed55a5e2ce540beb1f68 100644 (file)
@@ -1844,8 +1844,9 @@ get_prev_frame (struct frame_info *this_frame)
      checking for "main" in the minimal symbols.  With that fixed
      asm-source tests now stop in "main" instead of halting the
      backtrace in wierd and wonderful ways somewhere inside the entry
-     file.  Suspect that inside_entry_file and inside_entry_func tests
-     were added to work around that (now fixed) case.  */
+     file.  Suspect that deprecated_inside_entry_file and
+     inside_entry_func tests were added to work around that (now
+     fixed) case.  */
   /* NOTE: cagney/2003-07-15: danielj (if I'm reading it right)
      suggested having the inside_entry_func test use the
      inside_main_func msymbol trick (along with entry_point_address I
@@ -1884,7 +1885,6 @@ get_prev_frame (struct frame_info *this_frame)
     }
   this_frame->prev_p = 1;
 
-#if 0
   /* If we're inside the entry file, it isn't valid.  Don't apply this
      test to a dummy frame - dummy frame PC's typically land in the
      entry file.  Don't apply this test to the sentinel frame.
@@ -1896,17 +1896,19 @@ get_prev_frame (struct frame_info *this_frame)
   /* NOTE: cagney/2003-01-10: If there is a way of disabling this test
      then it should probably be moved to before the ->prev_p test,
      above.  */
-  /* NOTE: vinschen/2003-04-01: Disabled.  It turns out that the call to
-     inside_entry_file destroys a meaningful backtrace under some
-     conditions.  E. g. the backtrace tests in the asm-source testcase
-     are broken for some targets.  In this test the functions are all
-     implemented as part of one file and the testcase is not necessarily
-     linked with a start file (depending on the target).  What happens is,
-     that the first frame is printed normaly and following frames are
-     treated as being inside the enttry file then.  This way, only the
-     #0 frame is printed in the backtrace output.  */
-  if (this_frame->type != DUMMY_FRAME && this_frame->level >= 0
-      && inside_entry_file (get_frame_pc (this_frame)))
+  /* NOTE: vinschen/2003-04-01: Disabled.  It turns out that the call
+     to deprecated_inside_entry_file destroys a meaningful backtrace
+     under some conditions.  E. g. the backtrace tests in the
+     asm-source testcase are broken for some targets.  In this test
+     the functions are all implemented as part of one file and the
+     testcase is not necessarily linked with a start file (depending
+     on the target).  What happens is, that the first frame is printed
+     normaly and following frames are treated as being inside the
+     enttry file then.  This way, only the #0 frame is printed in the
+     backtrace output.  */
+  if (0
+      && this_frame->type != DUMMY_FRAME && this_frame->level >= 0
+      && deprecated_inside_entry_file (get_frame_pc (this_frame)))
     {
       if (frame_debug)
        {
@@ -1916,7 +1918,6 @@ get_prev_frame (struct frame_info *this_frame)
        }
       return NULL;
     }
-#endif
 
   /* If any of the old frame initialization methods are around, use
      the legacy get_prev_frame method.  */
index e7cd69995b217c70b2faed449fc43e8312e25f82..fe53e56f830d614f2657d4d09dd0fb4837141a69 100644 (file)
@@ -966,7 +966,7 @@ frv_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (inside_entry_file (func))
+  if (deprecated_inside_entry_file (func))
     return;
 
   /* Check if the stack is empty.  */
index 2fced7202cd90ff2a04c4c400a78ffdca5d1386c..69024045aec6445a3e3ee3b32aa59ceea2d4575c 100644 (file)
@@ -128,8 +128,8 @@ i386_interix_frame_chain_valid (CORE_ADDR chain, struct frame_info *thisframe)
      it'll make the correct test.  */
   return ((get_frame_type (thisframe) == SIGTRAMP_FRAME)
           || (chain != 0
-              && !inside_entry_file (read_memory_integer
-                                     (thisframe->frame + 4, 4))));
+              && !deprecated_inside_entry_file (read_memory_integer
+                                               (thisframe->frame + 4, 4))));
 }
 
 /* We want to find the previous frame, which on Interix is tricky when
index dc51699ff8ea61ba212695b4c2c20fd957fbe826..12a91c223f92af2e3e8585391071c896856ad381 100644 (file)
@@ -832,7 +832,7 @@ m32r_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (inside_entry_file (func))
+  if (deprecated_inside_entry_file (func))
     return;
 
   /* Check if the stack is empty.  */
index bc46f17fe9f4477b6d2b4a05e415a1ace8f4de7c..0f3ed0e5e1db56cb0c18631f32ab904adef27681 100644 (file)
@@ -896,7 +896,7 @@ m68hc11_frame_this_id (struct frame_info *next_frame,
 
   /* This is meant to halt the backtrace at "_start".  Make sure we
      don't halt it at a generic dummy frame. */
-  if (inside_entry_file (func))
+  if (deprecated_inside_entry_file (func))
     return;
 
   /* Hopefully the prologue analysis either correctly determined the
index 453b983c66d300ba61b4208ab55b45fd8e85d095..00c7ba60c97f51f4e3ede0dd6e457ded74465604 100644 (file)
@@ -3627,8 +3627,8 @@ parse_partial_symbols (struct objfile *objfile)
       if (objfile->ei.entry_point >= save_pst->textlow &&
          objfile->ei.entry_point < save_pst->texthigh)
        {
-         objfile->ei.entry_file_lowpc = save_pst->textlow;
-         objfile->ei.entry_file_highpc = save_pst->texthigh;
+         objfile->ei.deprecated_entry_file_lowpc = save_pst->textlow;
+         objfile->ei.deprecated_entry_file_highpc = save_pst->texthigh;
        }
 
       /* The objfile has its functions reordered if this partial symbol
index 9e391c0811eca44a315523ee66a3525375f23782..f49d3bad375216ad5895debde31f432fd536d7cc 100644 (file)
@@ -2623,7 +2623,7 @@ mips_frame_chain (struct frame_info *frame)
   CORE_ADDR tmp;
   CORE_ADDR saved_pc = DEPRECATED_FRAME_SAVED_PC (frame);
 
-  if (saved_pc == 0 || inside_entry_file (saved_pc))
+  if (saved_pc == 0 || deprecated_inside_entry_file (saved_pc))
     return 0;
 
   /* Check if the PC is inside a call stub.  If it is, fetch the
index 293eaed58f2db199df4fc24b1391a1582616c999..e40bf54173ce707441dad3eb741bb03afd8991c8 100644 (file)
@@ -113,15 +113,15 @@ mipscoff_symfile_read (struct objfile *objfile, int mainline)
 
   if (mainline
       && objfile->ei.entry_point != INVALID_ENTRY_POINT
-      && objfile->ei.entry_file_lowpc == INVALID_ENTRY_LOWPC)
+      && objfile->ei.deprecated_entry_file_lowpc == INVALID_ENTRY_LOWPC)
     {
       struct minimal_symbol *m;
 
       m = lookup_minimal_symbol_by_pc (objfile->ei.entry_point);
       if (m && DEPRECATED_SYMBOL_NAME (m + 1))
        {
-         objfile->ei.entry_file_lowpc = SYMBOL_VALUE_ADDRESS (m);
-         objfile->ei.entry_file_highpc = SYMBOL_VALUE_ADDRESS (m + 1);
+         objfile->ei.deprecated_entry_file_lowpc = SYMBOL_VALUE_ADDRESS (m);
+         objfile->ei.deprecated_entry_file_highpc = SYMBOL_VALUE_ADDRESS (m + 1);
        }
     }
 
index 5fd95fcb3c71bdf02f6322187e9d99e82d0826e0..f880bd3d9e8a040e9ccb1d962e767601ad2c0a83 100644 (file)
@@ -309,7 +309,7 @@ ns32k_frame_chain (struct frame_info *frame)
      FP value, and that address is saved at the previous FP value as a
      4-byte word.  */
 
-  if (inside_entry_file (get_frame_pc (frame)))
+  if (deprecated_inside_entry_file (get_frame_pc (frame)))
     return 0;
 
   return (read_memory_integer (get_frame_base (frame), 4));
index c62c9a00e29e3c86e1c7761ba10e85ca028e6a8e..003737208fddf7b9f24a594a9b39b10ed1de61ce 100644 (file)
@@ -787,10 +787,10 @@ objfile_relocate (struct objfile *objfile, struct section_offsets *new_offsets)
       objfile->ei.entry_func_highpc += ANOFFSET (delta, SECT_OFF_TEXT (objfile));
     }
 
-  if (objfile->ei.entry_file_lowpc != INVALID_ENTRY_LOWPC)
+  if (objfile->ei.deprecated_entry_file_lowpc != INVALID_ENTRY_LOWPC)
     {
-      objfile->ei.entry_file_lowpc += ANOFFSET (delta, SECT_OFF_TEXT (objfile));
-      objfile->ei.entry_file_highpc += ANOFFSET (delta, SECT_OFF_TEXT (objfile));
+      objfile->ei.deprecated_entry_file_lowpc += ANOFFSET (delta, SECT_OFF_TEXT (objfile));
+      objfile->ei.deprecated_entry_file_highpc += ANOFFSET (delta, SECT_OFF_TEXT (objfile));
     }
 
   if (objfile->ei.main_func_lowpc != INVALID_ENTRY_LOWPC)
index c52b95faa87ed8f8be4ebfe536315b67d66e84d9..f94afd183d7d6269f62e248b3d9c1638c67a3611 100644 (file)
@@ -43,14 +43,28 @@ struct symtab;
    to the user executable's recorded entry point, as if the call had been made
    directly by the kernel.
 
-   The traditional gdb method of using this info is to use the recorded entry
-   point to set the variables entry_file_lowpc and entry_file_highpc from
-   the debugging information, where these values are the starting address
-   (inclusive) and ending address (exclusive) of the instruction space in the
-   executable which correspond to the "startup file", I.E. crt0.o in most
-   cases.  This file is assumed to be a startup file and frames with pc's
-   inside it are treated as nonexistent.  Setting these variables is necessary
-   so that backtraces do not fly off the bottom of the stack.
+   The traditional gdb method of using this info is to use the
+   recorded entry point to set the variables
+   deprecated_entry_file_lowpc and deprecated_entry_file_highpc from
+   the debugging information, where these values are the starting
+   address (inclusive) and ending address (exclusive) of the
+   instruction space in the executable which correspond to the
+   "startup file", I.E. crt0.o in most cases.  This file is assumed to
+   be a startup file and frames with pc's inside it are treated as
+   nonexistent.  Setting these variables is necessary so that
+   backtraces do not fly off the bottom of the stack.
+
+   NOTE: cagney/2003-09-09: It turns out that this "traditional"
+   method doesn't work.  Corinna writes: ``It turns out that the call
+   to deprecated_inside_entry_file destroys a meaningful backtrace
+   under some conditions.  E. g. the backtrace tests in the asm-source
+   testcase are broken for some targets.  In this test the functions
+   are all implemented as part of one file and the testcase is not
+   necessarily linked with a start file (depending on the target).
+   What happens is, that the first frame is printed normaly and
+   following frames are treated as being inside the enttry file then.
+   This way, only the #0 frame is printed in the backtrace output.''
+   Ref "frame.c" "NOTE: vinschen/2003-04-01".
 
    Gdb also supports an alternate method to avoid running off the bottom
    of the stack.
@@ -116,8 +130,8 @@ struct entry_info
     /* Start (inclusive) and end (exclusive) of object file containing the
        entry point. */
 
-    CORE_ADDR entry_file_lowpc;
-    CORE_ADDR entry_file_highpc;
+    CORE_ADDR deprecated_entry_file_lowpc;
+    CORE_ADDR deprecated_entry_file_highpc;
 
     /* Start (inclusive) and end (exclusive) of the user code main() function. */
 
index 6d348db84806ef4eb13d2f6d6c32118a572f89e5..8bce98c9c906100d2e12413a121c530b05fdd81c 100644 (file)
@@ -1803,7 +1803,7 @@ rs6000_frame_chain (struct frame_info *thisframe)
        frame.  */
     return read_memory_addr (get_frame_base (thisframe), wordsize);
 
-  if (inside_entry_file (get_frame_pc (thisframe))
+  if (deprecated_inside_entry_file (get_frame_pc (thisframe))
       || get_frame_pc (thisframe) == entry_point_address ())
     return 0;
 
index 578076f1d024239e9d5ec4bc971a09e32e888484..04adbb87af0f33bdadcce918b58a8ccebcdcb8fc 100644 (file)
@@ -487,7 +487,8 @@ sh_frame_chain (struct frame_info *frame)
                                   get_frame_base (frame),
                                   get_frame_base (frame)))
     return get_frame_base (frame);     /* dummy frame same as caller's frame */
-  if (get_frame_pc (frame) && !inside_entry_file (get_frame_pc (frame)))
+  if (get_frame_pc (frame)
+      && !deprecated_inside_entry_file (get_frame_pc (frame)))
     return read_memory_integer (get_frame_base (frame)
                                + get_frame_extra_info (frame)->f_offset, 4);
   else
index e93fb233a8eec5406fed4b4e0201cd30cab1420a..0a3fd53a99b33bd7606d8027afe183b6c22e0f13 100644 (file)
@@ -745,7 +745,8 @@ sh64_frame_chain (struct frame_info *frame)
                                   get_frame_base (frame),
                                   get_frame_base (frame)))
     return get_frame_base (frame);     /* dummy frame same as caller's frame */
-  if (get_frame_pc (frame) && !inside_entry_file (get_frame_pc (frame)))
+  if (get_frame_pc (frame)
+      && !deprecated_inside_entry_file (get_frame_pc (frame)))
     {
       int media_mode = pc_is_isa32 (get_frame_pc (frame));
       int size;
index 02b2c36e7f1de341a58e1774d3f5b79c74228746..e2fbc2ae2eefb5ba7a2fd36cf87d5a6def7d39fe 100644 (file)
@@ -327,8 +327,8 @@ init_entry_point_info (struct objfile *objfile)
       /* Examination of non-executable.o files.  Short-circuit this stuff.  */
       objfile->ei.entry_point = INVALID_ENTRY_POINT;
     }
-  objfile->ei.entry_file_lowpc = INVALID_ENTRY_LOWPC;
-  objfile->ei.entry_file_highpc = INVALID_ENTRY_HIGHPC;
+  objfile->ei.deprecated_entry_file_lowpc = INVALID_ENTRY_LOWPC;
+  objfile->ei.deprecated_entry_file_highpc = INVALID_ENTRY_HIGHPC;
   objfile->ei.entry_func_lowpc = INVALID_ENTRY_LOWPC;
   objfile->ei.entry_func_highpc = INVALID_ENTRY_HIGHPC;
   objfile->ei.main_func_lowpc = INVALID_ENTRY_LOWPC;
index 9a16730f62ebdcf7529dd961a99b7048e6514e2d..ed14225169f6ca9e3695ef7b22c10432c249fbac 100644 (file)
@@ -188,7 +188,7 @@ vax_frame_chain (struct frame_info *frame)
 {
   /* In the case of the VAX, the frame's nominal address is the FP value,
      and 12 bytes later comes the saved previous FP value as a 4-byte word.  */
-  if (inside_entry_file (get_frame_pc (frame)))
+  if (deprecated_inside_entry_file (get_frame_pc (frame)))
     return (0);
 
   return (read_memory_integer (get_frame_base (frame) + 12, 4));