tx19 sanitize fixes.
[deliverable/binutils-gdb.git] / gdb / a29k-tdep.c
index dbcd60b0ad3e6221fb4f440efeb1642e70089f51..696f28487a9f6b73c532093a00328894664389f2 100644 (file)
@@ -17,7 +17,7 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #include "defs.h"
 #include "gdbcore.h"
@@ -688,7 +688,7 @@ get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lvalp)
        *lvalp = not_lval;
       return;
     }
-  else if (regnum == PC_REGNUM)
+  else if (regnum == PC_REGNUM && frame->next != NULL)
     {
       if (raw_buffer != NULL)
        {
@@ -989,14 +989,15 @@ get_longjmp_target(pc)
      CORE_ADDR *pc;
 {
   CORE_ADDR jb_addr;
+  char buf[sizeof(CORE_ADDR)];
 
   jb_addr = read_register(LR2_REGNUM);
 
-  if (target_read_memory(jb_addr + JB_PC * JB_ELEMENT_SIZE, (char *) pc,
+  if (target_read_memory(jb_addr + JB_PC * JB_ELEMENT_SIZE, (char *) buf,
                          sizeof(CORE_ADDR)))
     return 0;
 
-  SWAP_TARGET_AND_HOST(pc, sizeof(CORE_ADDR));
+  *pc = extract_address ((PTR) buf, sizeof(CORE_ADDR));
   return 1;
 }
 #endif /* GET_LONGJMP_TARGET */
This page took 0.024087 seconds and 4 git commands to generate.