* spu-tdep.c (spu_analyze_prologue): Fix erroneous backtrace
authorUlrich Weigand <uweigand@de.ibm.com>
Thu, 11 Jan 2007 20:48:50 +0000 (20:48 +0000)
committerUlrich Weigand <uweigand@de.ibm.com>
Thu, 11 Jan 2007 20:48:50 +0000 (20:48 +0000)
past entry function with recent newlib.

gdb/ChangeLog
gdb/spu-tdep.c

index 4ec0c4d7632479a5bac51c61e6218377f43fc164..0e5fc687503df828f324a2809263e7fb002ad9cd 100644 (file)
@@ -1,3 +1,8 @@
+2007-01-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * spu-tdep.c (spu_analyze_prologue): Fix erroneous backtrace
+       past entry function with recent newlib.
+
 2007-01-11  Vladimir Prus  <vladimir@codesourcery.com>
 
        * gdb.texinfo (GDB/MI Variable Objects): Improve the 
index de534ddbd477784cd88037ef59ba76a713430899..222b95f8f1bec8aef73413c689263217c12b91f1 100644 (file)
@@ -478,11 +478,17 @@ spu_analyze_prologue (CORE_ADDR start_pc, CORE_ADDR end_pc,
       else if (is_ri16 (insn, op_il, &rt, &immed))
        {
          reg_immed[rt] = immed;
+
+         if (rt == SPU_RAW_SP_REGNUM && !found_sp)
+           found_sp = 1;
        }
 
       else if (is_ri18 (insn, op_ila, &rt, &immed))
        {
          reg_immed[rt] = immed & 0x3ffff;
+
+         if (rt == SPU_RAW_SP_REGNUM && !found_sp)
+           found_sp = 1;
        }
 
       /* STQD is used to save registers to the stack.  */