register_area callback function.
	* i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
	Use it instead of current_gdbarch.
	* nto-procfs.c (procfs_store_registers): Update call.
+2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
+       register_area callback function.
+       * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
+       Use it instead of current_gdbarch.
+       * nto-procfs.c (procfs_store_registers): Update call.
+
 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
 
 }
 
 static int
-i386nto_register_area (int regno, int regset, unsigned *off)
+i386nto_register_area (struct gdbarch *gdbarch,
+                      int regno, int regset, unsigned *off)
 {
   int len;
 
       if (regno == -1)
        return regset_size;
 
-      *off = (regno - gdbarch_fp0_regnum (current_gdbarch))
-            * regsize + off_adjust;
+      *off = (regno - gdbarch_fp0_regnum (gdbarch)) * regsize + off_adjust;
       return 10;
       /* Why 10 instead of regsize?  GDB only stores 10 bytes per FP
          register so if we're sending a register back to the target,
 
       if (dev_set == -1)
        return;
 
-      len = nto_register_area (regno, regset, &off);
+      len = nto_register_area (get_regcache_arch (regcache),
+                              regno, regset, &off);
 
       if (len < 1)
        return;
 
    and stuff it into the last argument.  If regno is -1, calculate the
    size of the entire regset.  Returns length of data, -1 if unknown
    regset, 0 if unknown register.  */
-  int (*register_area) (int, int, unsigned *);
+  int (*register_area) (struct gdbarch *, int, int, unsigned *);
 
 /* Build the Neutrino register set info into the data buffer.  
    Return -1 if unknown regset, 0 otherwise.  */