diff -urpN src/gdb/target-descriptions.c dev/gdb/target-descriptions.c --- src/gdb/target-descriptions.c 2007-10-15 21:45:30.000000000 +0200 +++ dev/gdb/target-descriptions.c 2007-10-30 11:21:46.000000000 +0100 @@ -507,21 +507,20 @@ tdesc_find_register (struct gdbarch *gdb from an architecture-provided pseudo_register_name method. */ const char * -tdesc_register_name (int regno) +tdesc_register_name (struct gdbarch *gdbarch, int regno) { - struct tdesc_reg *reg = tdesc_find_register (current_gdbarch, regno); - int num_regs = gdbarch_num_regs (current_gdbarch); - int num_pseudo_regs = gdbarch_num_pseudo_regs (current_gdbarch); + struct tdesc_reg *reg = tdesc_find_register (gdbarch, regno); + int num_regs = gdbarch_num_regs (gdbarch); + int num_pseudo_regs = gdbarch_num_pseudo_regs (gdbarch); if (reg != NULL) return reg->name; if (regno >= num_regs && regno < num_regs + num_pseudo_regs) { - struct tdesc_arch_data *data = gdbarch_data (current_gdbarch, - tdesc_data); + struct tdesc_arch_data *data = gdbarch_data (gdbarch, tdesc_data); gdb_assert (data->pseudo_register_name != NULL); - return data->pseudo_register_name (regno); + return data->pseudo_register_name (gdbarch, regno); } return ""; diff -urpN src/gdb/target-descriptions.h dev/gdb/target-descriptions.h --- src/gdb/target-descriptions.h 2007-10-15 21:45:30.000000000 +0200 +++ dev/gdb/target-descriptions.h 2007-10-30 11:16:16.000000000 +0100 @@ -152,7 +152,7 @@ struct type *tdesc_named_type (const str /* Return the name of register REGNO, from the target description or from an architecture-provided pseudo_register_name method. */ -const char *tdesc_register_name (int regno); +const char *tdesc_register_name (struct gdbarch *gdbarch, int regno); /* Check whether REGNUM is a member of REGGROUP using the target description. Return -1 if the target description does not