gdb/
[deliverable/binutils-gdb.git] / gdb / rx-tdep.c
index 6506de93138468590bb3b24d4d994705a4efbd6c..03ea98346f3ce1133b92e038afea12ccb18e2089 100644 (file)
@@ -1,6 +1,6 @@
 /* Target-dependent code for the Renesas RX for GDB, the GNU debugger.
 
-   Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 
    Contributed by Red Hat, Inc.
 
@@ -46,7 +46,8 @@ enum
   RX_FP_REGNUM = 6,
   RX_R15_REGNUM = 15,
   RX_PC_REGNUM = 19,
-  RX_NUM_REGS = 25
+  RX_ACC_REGNUM = 25,
+  RX_NUM_REGS = 26
 };
 
 /* Architecture specific data.  */
@@ -111,15 +112,16 @@ rx_register_name (struct gdbarch *gdbarch, int regnr)
     "r13",
     "r14",
     "r15",
-    "isp",
     "usp",
-    "intb",
-    "pc",
+    "isp",
     "psw",
-    "bpc",
+    "pc",
+    "intb",
     "bpsw",
-    "vct",
-    "fpsw"
+    "bpc",
+    "fintv",
+    "fpsw",
+    "acc"
   };
 
   return reg_names[regnr];
@@ -131,6 +133,8 @@ rx_register_type (struct gdbarch *gdbarch, int reg_nr)
 {
   if (reg_nr == RX_PC_REGNUM)
     return builtin_type (gdbarch)->builtin_func_ptr;
+  else if (reg_nr == RX_ACC_REGNUM)
+    return builtin_type (gdbarch)->builtin_unsigned_long_long;
   else
     return builtin_type (gdbarch)->builtin_unsigned_long;
 }
@@ -292,7 +296,6 @@ rx_analyze_prologue (CORE_ADDR start_pc,
        }
       else if (opc.id == RXO_branch
               && opc.op[0].type == RX_Operand_Immediate
-              && opc.op[1].type == RX_Operand_Condition
               && next_pc < opc.op[0].addend)
        {
          /* When a loop appears as the first statement of a function
This page took 0.028634 seconds and 4 git commands to generate.