Miscellaneous RISC-V compiler updates
authorAndrew Waterman <waterman@s144.Millennium.Berkeley.EDU>
Fri, 11 Nov 2011 08:31:50 +0000 (00:31 -0800)
committerAndrew Waterman <waterman@s144.Millennium.Berkeley.EDU>
Fri, 11 Nov 2011 08:31:50 +0000 (00:31 -0800)
tools/compilers/gcc-glibc/binutils-2.21.1-riscv.patch
tools/compilers/gcc-glibc/gcc-4.6.1-riscv.patch
tools/compilers/gcc-glibc/glibc-2.14.1-riscv.patch

index 314d625..1aa0bed 100644 (file)
@@ -5799,8 +5799,8 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elf64-riscv.c binutils-2
 +#include "elf64-target.h"
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2.21.1/bfd/elfxx-riscv.c
 --- ../binutils-2.21.1-orig/bfd/elfxx-riscv.c  1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/bfd/elfxx-riscv.c  2011-11-07 21:55:01.000000000 -0800
-@@ -0,0 +1,8558 @@
++++ binutils-2.21.1/bfd/elfxx-riscv.c  2011-11-09 01:25:54.000000000 -0800
+@@ -0,0 +1,8366 @@
 +/* MIPS-specific support for ELF
 +   Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
 +   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
@@ -6387,13 +6387,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +#define MIPS_ELF_GNU_GOT1_MASK(abfd) \
 +  ((bfd_vma) 1 << (ABI_64_P (abfd) ? 63 : 31))
 +
-+/* The offset of $gp from the beginning of the .got section.  */
-+#define ELF_MIPS_GP_OFFSET(INFO) 0x7f0
-+
-+/* The maximum size of the GOT for it to be addressable using 16-bit
-+   offsets from $gp.  */
-+#define MIPS_ELF_GOT_MAX_SIZE(INFO) (ELF_MIPS_GP_OFFSET (INFO) + 0x7ff)
-+
 +#define MIPS_FUNCTION_STUB_NORMAL_SIZE 16
 +#define MIPS_FUNCTION_STUB_BIG_SIZE 20
 +
@@ -6766,7 +6759,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +}
 +
 +/* STUB describes an la25 stub that we have decided to implement
-+   by inserting an LUI/ADDIU pair before the target function.
++   by inserting RDNPC before the target function.
 +   Create the section and redirect the function symbol to it.  */
 +
 +static bfd_boolean
@@ -6799,8 +6792,8 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +  align = input_section->alignment_power;
 +  if (!bfd_set_section_alignment (s->owner, s, align))
 +    return FALSE;
-+  if (align > 3)
-+    s->size = (1 << align) - 8;
++  if (align > 2)
++    s->size = (1 << align) - 4;
 +
 +  /* Create a symbol for the stub.  */
 +  mips_elf_create_stub_symbol (info, stub->h, ".pic.", s, s->size, 8);
@@ -6808,7 +6801,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +  stub->offset = s->size;
 +
 +  /* Allocate room for it.  */
-+  s->size += 8;
++  s->size += 4;
 +  return TRUE;
 +}
 +
@@ -12000,12 +11993,11 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +
 +  if (stub->stub_section != htab->strampoline)
 +    {
-+      /* This is a simple LUI/ADDI stub.  Zero out the beginning
-+       of the section and write the two instructions at the end.  */
++      /* This is a simple RDNPC stub.  Zero out the beginning
++       of the section and write the instruction at the end. */
 +      memset (loc, 0, offset);
 +      loc += offset;
-+      bfd_put_32 (hti->output_bfd, RISCV_LTYPE (LUI, 19, RISCV_LUI_HIGH_PART(target)), loc);
-+      bfd_put_32 (hti->output_bfd, RISCV_ITYPE (ADDI, 19, 19, RISCV_CONST_LOW_PART(target)), loc + 4);
++      bfd_put_32 (hti->output_bfd, RISCV_ITYPE (RDNPC, 19, 0, 0), loc);
 +    }
 +  else
 +    {
@@ -12125,7 +12117,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +         jalr   t7
 +       */
 +      idx = 0;
-+      bfd_put_32 (output_bfd, RISCV_ITYPE (LREG(output_bfd), 19, 28, -ELF_MIPS_GP_OFFSET (info)), stub + idx);
++      bfd_put_32 (output_bfd, RISCV_ITYPE (LREG(output_bfd), 19, 28, 0), stub + idx);
 +      idx += 4;
 +      bfd_put_32 (output_bfd, RISCV_ITYPE (ADDI, 17, LINK_REG, 0), stub + idx);
 +      idx += 4;
@@ -12574,110 +12566,17 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +  switch (bfd_get_mach (abfd))
 +    {
 +    default:
-+    case bfd_mach_mips3000:
-+      val = E_MIPS_ARCH_1;
-+      break;
-+
-+    case bfd_mach_mips3900:
-+      val = E_MIPS_ARCH_1 | E_MIPS_MACH_3900;
-+      break;
-+
-+    case bfd_mach_mips6000:
-+      val = E_MIPS_ARCH_2;
-+      break;
-+
-+    case bfd_mach_mips4000:
-+    case bfd_mach_mips4300:
-+    case bfd_mach_mips4400:
-+    case bfd_mach_mips4600:
-+      val = E_MIPS_ARCH_3;
-+      break;
-+
-+    case bfd_mach_mips4010:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_4010;
-+      break;
-+
-+    case bfd_mach_mips4100:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_4100;
-+      break;
-+
-+    case bfd_mach_mips4111:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_4111;
-+      break;
-+
-+    case bfd_mach_mips4120:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_4120;
-+      break;
-+
-+    case bfd_mach_mips4650:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_4650;
-+      break;
-+
-+    case bfd_mach_mips5400:
-+      val = E_MIPS_ARCH_4 | E_MIPS_MACH_5400;
-+      break;
-+
-+    case bfd_mach_mips5500:
-+      val = E_MIPS_ARCH_4 | E_MIPS_MACH_5500;
-+      break;
-+
-+    case bfd_mach_mips9000:
-+      val = E_MIPS_ARCH_4 | E_MIPS_MACH_9000;
-+      break;
-+
-+    case bfd_mach_mips5000:
-+    case bfd_mach_mips7000:
-+    case bfd_mach_mips8000:
-+    case bfd_mach_mips10000:
-+    case bfd_mach_mips12000:
-+    case bfd_mach_mips14000:
-+    case bfd_mach_mips16000:
-+      val = E_MIPS_ARCH_4;
-+      break;
-+
-+    case bfd_mach_mips5:
-+      val = E_MIPS_ARCH_5;
-+      break;
-+
-+    case bfd_mach_mips_loongson_2e:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_LS2E;
-+      break;
-+
-+    case bfd_mach_mips_loongson_2f:
-+      val = E_MIPS_ARCH_3 | E_MIPS_MACH_LS2F;
-+      break;
-+
-+    case bfd_mach_mips_sb1:
-+      val = E_MIPS_ARCH_64 | E_MIPS_MACH_SB1;
-+      break;
-+
-+    case bfd_mach_mips_octeon:
-+      val = E_MIPS_ARCH_64R2 | E_MIPS_MACH_OCTEON;
++    case bfd_mach_riscv_rocket64:
++      val = E_RISCV_ARCH_RV64 | E_RISCV_MACH_ROCKET64;
 +      break;
 +
-+    case bfd_mach_mips_xlr:
-+      val = E_MIPS_ARCH_64 | E_MIPS_MACH_XLR;
-+      break;
-+
-+    case bfd_mach_mipsisa32:
-+      val = E_MIPS_ARCH_32;
-+      break;
-+
-+    case bfd_mach_mipsisa64:
-+      val = E_MIPS_ARCH_64;
-+      break;
-+
-+    case bfd_mach_mipsisa32r2:
-+      val = E_MIPS_ARCH_32R2;
-+      break;
-+
-+    case bfd_mach_mipsisa64r2:
-+      val = E_MIPS_ARCH_64R2;
++    case bfd_mach_riscv_rocket32:
++      val = E_RISCV_ARCH_RV32 | E_RISCV_MACH_ROCKET32;
 +      break;
 +    }
++
 +  elf_elfheader (abfd)->e_flags &= ~(EF_MIPS_ARCH | EF_MIPS_MACH);
 +  elf_elfheader (abfd)->e_flags |= val;
-+
 +}
 +
 +
@@ -13499,7 +13398,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +            lo = o->vma;
 +
 +        /* And calculate GP relative to that.  */
-+        elf_gp (abfd) = lo + ELF_MIPS_GP_OFFSET (info);
++        elf_gp (abfd) = lo;
 +      }
 +      else
 +      {
@@ -13788,104 +13687,13 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/bfd/elfxx-riscv.c binutils-2
 +
 +  return TRUE;
 +}
-+\f
-+/* Structure for saying that BFD machine EXTENSION extends BASE.  */
-+
-+struct mips_mach_extension {
-+  unsigned long extension, base;
-+};
-+
-+
-+/* An array describing how BFD machines relate to one another.  The entries
-+   are ordered topologically with MIPS I extensions listed last.  */
-+
-+static const struct mips_mach_extension mips_mach_extensions[] = {
-+  /* MIPS64r2 extensions.  */
-+  { bfd_mach_mips_octeon, bfd_mach_mipsisa64r2 },
-+
-+  /* MIPS64 extensions.  */
-+  { bfd_mach_mipsisa64r2, bfd_mach_mipsisa64 },
-+  { bfd_mach_mips_sb1, bfd_mach_mipsisa64 },
-+  { bfd_mach_mips_xlr, bfd_mach_mipsisa64 },
-+
-+  /* MIPS V extensions.  */
-+  { bfd_mach_mipsisa64, bfd_mach_mips5 },
-+
-+  /* R10000 extensions.  */
-+  { bfd_mach_mips12000, bfd_mach_mips10000 },
-+  { bfd_mach_mips14000, bfd_mach_mips10000 },
-+  { bfd_mach_mips16000, bfd_mach_mips10000 },
-+
-+  /* R5000 extensions.  Note: the vr5500 ISA is an extension of the core
-+     vr5400 ISA, but doesn't include the multimedia stuff.  It seems
-+     better to allow vr5400 and vr5500 code to be merged anyway, since
-+     many libraries will just use the core ISA.  Perhaps we could add
-+     some sort of ASE flag if this ever proves a problem.  */
-+  { bfd_mach_mips5500, bfd_mach_mips5400 },
-+  { bfd_mach_mips5400, bfd_mach_mips5000 },
-+
-+  /* MIPS IV extensions.  */
-+  { bfd_mach_mips5, bfd_mach_mips8000 },
-+  { bfd_mach_mips10000, bfd_mach_mips8000 },
-+  { bfd_mach_mips5000, bfd_mach_mips8000 },
-+  { bfd_mach_mips7000, bfd_mach_mips8000 },
-+  { bfd_mach_mips9000, bfd_mach_mips8000 },
-+
-+  /* VR4100 extensions.  */
-+  { bfd_mach_mips4120, bfd_mach_mips4100 },
-+  { bfd_mach_mips4111, bfd_mach_mips4100 },
-+
-+  /* MIPS III extensions.  */
-+  { bfd_mach_mips_loongson_2e, bfd_mach_mips4000 },
-+  { bfd_mach_mips_loongson_2f, bfd_mach_mips4000 },
-+  { bfd_mach_mips8000, bfd_mach_mips4000 },
-+  { bfd_mach_mips4650, bfd_mach_mips4000 },
-+  { bfd_mach_mips4600, bfd_mach_mips4000 },
-+  { bfd_mach_mips4400, bfd_mach_mips4000 },
-+  { bfd_mach_mips4300, bfd_mach_mips4000 },
-+  { bfd_mach_mips4100, bfd_mach_mips4000 },
-+  { bfd_mach_mips4010, bfd_mach_mips4000 },
-+
-+  /* MIPS32 extensions.  */
-+  { bfd_mach_mipsisa32r2, bfd_mach_mipsisa32 },
-+
-+  /* MIPS II extensions.  */
-+  { bfd_mach_mips4000, bfd_mach_mips6000 },
-+  { bfd_mach_mipsisa32, bfd_mach_mips6000 },
-+
-+  /* MIPS I extensions.  */
-+  { bfd_mach_mips6000, bfd_mach_mips3000 },
-+  { bfd_mach_mips3900, bfd_mach_mips3000 }
-+};
-+
 +
 +/* Return true if bfd machine EXTENSION is an extension of machine BASE.  */
 +
 +static bfd_boolean
 +mips_mach_extends_p (unsigned long base, unsigned long extension)
 +{
-+  size_t i;
-+
-+  if (extension == base)
-+    return TRUE;
-+
-+  if (base == bfd_mach_mipsisa32
-+      && mips_mach_extends_p (bfd_mach_mipsisa64, extension))
-+    return TRUE;
-+
-+  if (base == bfd_mach_mipsisa32r2
-+      && mips_mach_extends_p (bfd_mach_mipsisa64r2, extension))
-+    return TRUE;
-+
-+  for (i = 0; i < ARRAY_SIZE (mips_mach_extensions); i++)
-+    if (extension == mips_mach_extensions[i].extension)
-+      {
-+      extension = mips_mach_extensions[i].base;
-+      if (extension == base)
-+        return TRUE;
-+      }
-+
-+  return FALSE;
++  return extension == base;
 +}
 +
 +
@@ -14598,8 +14406,8 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/config.sub binutils-2.21.1/c
        # because (1) that's what they normally are, and
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binutils-2.21.1/gas/config/tc-riscv.c
 --- ../binutils-2.21.1-orig/gas/config/tc-riscv.c      1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/gas/config/tc-riscv.c      2011-11-01 20:58:24.000000000 -0700
-@@ -0,0 +1,4942 @@
++++ binutils-2.21.1/gas/config/tc-riscv.c      2011-11-09 01:26:08.000000000 -0800
+@@ -0,0 +1,4920 @@
 +/* tc-mips.c -- assemble code for a MIPS chip.
 +   Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
 +   2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
@@ -14734,10 +14542,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binuti
 +/* Whether or not we have code that can call pic code.  */
 +int mips_abicalls = FALSE;
 +
-+/* Whether or not we have code which can be put into a shared
-+   library.  */
-+static bfd_boolean mips_in_shared = TRUE;
-+
 +/* This is the set of options which may be modified by the .set
 +   pseudo-op.  We use a struct so that .set push and .set pop are more
 +   reliable.  */
@@ -16545,12 +16349,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binuti
 +  else
 +    {
 +      gas_assert (ep->X_op == O_symbol);
-+      /* _gp_disp is a special case, used from s_cpload.
-+       __gnu_local_gp is used if mips_no_shared.  */
-+      gas_assert (mips_pic == NO_PIC
-+            || (! mips_in_shared
-+                && strcmp (S_GET_NAME (ep->X_add_symbol),
-+                             "__gnu_local_gp") == 0));
 +      *r = BFD_RELOC_HI16_S;
 +    }
 +
@@ -17483,8 +17281,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binuti
 +    OPTION_MNO_RVC,
 +    OPTION_GP32,
 +    OPTION_GP64,
-+    OPTION_MSHARED,
-+    OPTION_MNO_SHARED,
 +    OPTION_MSYM32,
 +    OPTION_MNO_SYM32,
 +#ifdef OBJ_ELF
@@ -17512,8 +17308,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binuti
 +  {"mno-rvc", no_argument, NULL, OPTION_MNO_RVC},
 +  {"mgp32", no_argument, NULL, OPTION_GP32},
 +  {"mgp64", no_argument, NULL, OPTION_GP64},
-+  {"mshared", no_argument, NULL, OPTION_MSHARED},
-+  {"mno-shared", no_argument, NULL, OPTION_MNO_SHARED},
 +  {"msym32", no_argument, NULL, OPTION_MSYM32},
 +  {"mno-sym32", no_argument, NULL, OPTION_MNO_SYM32},
 +  
@@ -17574,14 +17368,6 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/gas/config/tc-riscv.c binuti
 +      mips_set_option_string (&mips_arch_string, arg);
 +      break;
 +
-+    case OPTION_MSHARED:
-+      mips_in_shared = TRUE;
-+      break;
-+
-+    case OPTION_MNO_SHARED:
-+      mips_in_shared = FALSE;
-+      break;
-+
 +    case OPTION_MSYM32:
 +      mips_opts.sym32 = TRUE;
 +      break;
@@ -20573,7 +20359,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/include/opcode/riscv.h binut
 +#endif /* _MIPS_H_ */
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/include/opcode/riscv-opc.h binutils-2.21.1/include/opcode/riscv-opc.h
 --- ../binutils-2.21.1-orig/include/opcode/riscv-opc.h 1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/include/opcode/riscv-opc.h 2011-10-22 18:50:03.000000000 -0700
++++ binutils-2.21.1/include/opcode/riscv-opc.h 2011-11-11 00:13:56.000000000 -0800
 @@ -0,0 +1,545 @@
 +/* Automatically generated by parse-opcodes */
 +#define MATCH_MOVN 0x6f7
@@ -20701,13 +20487,13 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/include/opcode/riscv-opc.h b
 +#define MATCH_VSSEGSTB 0x80f
 +#define  MASK_VSSEGSTB 0xfff
 +#define MATCH_MFTX_D 0x1c0d3
-+#define  MASK_MFTX_D 0x7c1ffff
++#define  MASK_MFTX_D 0x3fffff
 +#define MATCH_DIV 0x633
 +#define  MASK_DIV 0x1ffff
 +#define MATCH_C_LD 0x9
 +#define  MASK_C_LD 0x1f
 +#define MATCH_MFTX_S 0x1c053
-+#define  MASK_MFTX_S 0x7c1ffff
++#define  MASK_MFTX_S 0x3fffff
 +#define MATCH_VSSEGSTH 0x88f
 +#define  MASK_VSSEGSTH 0xfff
 +#define MATCH_VVCFGIVL 0xf3
@@ -21135,7 +20921,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/ld/configure.tgt binutils-2.
                        ;;
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/ld/emulparams/elf32lriscv-defs.sh binutils-2.21.1/ld/emulparams/elf32lriscv-defs.sh
 --- ../binutils-2.21.1-orig/ld/emulparams/elf32lriscv-defs.sh  1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/ld/emulparams/elf32lriscv-defs.sh  2011-11-07 20:20:08.000000000 -0800
++++ binutils-2.21.1/ld/emulparams/elf32lriscv-defs.sh  2011-11-08 19:52:33.000000000 -0800
 @@ -0,0 +1,90 @@
 +# This is an ELF platform.
 +SCRIPT_NAME=elf
@@ -21184,7 +20970,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/ld/emulparams/elf32lriscv-de
 +# of .got.
 +OTHER_GOT_SYMBOLS='
 +  . = .;
-+  _gp = ALIGN(16) + 0x7f0;
++  _gp = ALIGN(16);
 +'
 +# .got.plt is only used for the PLT psABI extension.  It should not be
 +# included in the .sdata block with .got, as there is no need to access
@@ -21657,9 +21443,8 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/opcodes/disassemble.c binuti
        if (bfd_get_mach (abfd) == bfd_mach_ppc_620)
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/opcodes/riscv-dis.c binutils-2.21.1/opcodes/riscv-dis.c
 --- ../binutils-2.21.1-orig/opcodes/riscv-dis.c        1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/opcodes/riscv-dis.c        2011-10-22 19:19:34.000000000 -0700
-@@ -0,0 +1,905 @@
-+/* vim: set ts=8: */
++++ binutils-2.21.1/opcodes/riscv-dis.c        2011-11-08 21:34:09.000000000 -0800
+@@ -0,0 +1,904 @@
 +/* Print mips instructions for GDB, the GNU debugger, or for objdump.
 +   Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
 +   2000, 2001, 2002, 2003, 2005, 2007, 2008
@@ -22566,7 +22351,7 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/opcodes/riscv-dis.c binutils
 +}
 diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/opcodes/riscv-opc.c binutils-2.21.1/opcodes/riscv-opc.c
 --- ../binutils-2.21.1-orig/opcodes/riscv-opc.c        1969-12-31 16:00:00.000000000 -0800
-+++ binutils-2.21.1/opcodes/riscv-opc.c        2011-10-22 19:14:45.000000000 -0700
++++ binutils-2.21.1/opcodes/riscv-opc.c        2011-11-11 00:12:46.000000000 -0800
 @@ -0,0 +1,449 @@
 +/* mips-opc.c -- MIPS opcode list.
 +   Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
@@ -22756,12 +22541,12 @@ diff -x autom4te.cache -ruN ../binutils-2.21.1-orig/opcodes/riscv-opc.c binutils
 +{"mtfsr",   "d,s",    MATCH_MTFSR, MASK_MTFSR,  WR_xd|RD_xs1 },
 +{"mfpcr",   "d,E",    MATCH_MFPCR, MASK_MFPCR,  WR_xd },
 +{"mtpcr",   "s,E",    MATCH_MTPCR, MASK_MTPCR,  RD_xs1 },
-+{"mftx.s",   "d,T",   MATCH_MFTX_S, MASK_MFTX_S,  WR_xd|RD_fs1 },
-+{"mftx.s",   "d,t",   MATCH_MFTX_S, MASK_MFTX_S,  WR_xd|RD_fs1 },
++{"mftx.s",   "d,S",   MATCH_MFTX_S, MASK_MFTX_S,  WR_xd|RD_fs1 },
++{"mftx.s",   "d,s",   MATCH_MFTX_S, MASK_MFTX_S,  WR_xd|RD_fs1 },
 +{"mxtf.s",   "D,s",   MATCH_MXTF_S, MASK_MXTF_S,  WR_fd|RD_xs1 },
 +{"mxtf.s",   "d,s",   MATCH_MXTF_S, MASK_MXTF_S,  WR_fd|RD_xs1 },
-+{"mftx.d",   "d,T",   MATCH_MFTX_D, MASK_MFTX_D,  WR_xd|RD_fs1 },
-+{"mftx.d",   "d,t",   MATCH_MFTX_D, MASK_MFTX_D,  WR_xd|RD_fs1 },
++{"mftx.d",   "d,S",   MATCH_MFTX_D, MASK_MFTX_D,  WR_xd|RD_fs1 },
++{"mftx.d",   "d,s",   MATCH_MFTX_D, MASK_MFTX_D,  WR_xd|RD_fs1 },
 +{"mxtf.d",   "D,s",   MATCH_MXTF_D, MASK_MXTF_D,  WR_fd|RD_xs1 },
 +{"mxtf.d",   "d,s",   MATCH_MXTF_D, MASK_MXTF_D,  WR_fd|RD_xs1 },
 +{"mul",    "d,s,t",   MATCH_MUL, MASK_MUL,  WR_xd|RD_xs1|RD_xs2 },
index 3d4ecaa..dc87d45 100644 (file)
@@ -13,8 +13,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/config.sub g
        # because (1) that's what they normally are, and
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/constraints.md gcc-4.6.1/gcc/config/riscv/constraints.md
 --- ../gcc-4.6.1-orig/gcc/config/riscv/constraints.md  1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/constraints.md  2011-11-03 02:32:03.000000000 -0700
-@@ -0,0 +1,157 @@
++++ gcc-4.6.1/gcc/config/riscv/constraints.md  2011-11-09 01:24:47.000000000 -0800
+@@ -0,0 +1,156 @@
 +;; Constraint definitions for MIPS.
 +;; Copyright (C) 2006, 2007, 2008, 2010 Free Software Foundation, Inc.
 +;;
@@ -51,8 +51,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +;; MIPS16 code always calls through a MIPS16 register; see mips_emit_call_insn
 +;; for details.
-+(define_register_constraint "c" "TARGET_USE_PIC_FN_ADDR_REG ? PIC_FN_ADDR_REG
-+                               : GR_REGS"
++(define_register_constraint "c" "TARGET_ABICALLS ? PIC_FN_ADDR_REG : GR_REGS"
 +  "A register suitable for use in an indirect jump.  This will always be
 +   @code{$25} for @option{-mabicalls}.")
 +
@@ -441,8 +440,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  "alu")
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/linux64.h gcc-4.6.1/gcc/config/riscv/linux64.h
 --- ../gcc-4.6.1-orig/gcc/config/riscv/linux64.h       1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/linux64.h       2011-11-07 20:15:18.000000000 -0800
-@@ -0,0 +1,62 @@
++++ gcc-4.6.1/gcc/config/riscv/linux64.h       2011-11-09 01:25:00.000000000 -0800
+@@ -0,0 +1,61 @@
 +/* Definitions for MIPS running Linux-based GNU systems with ELF format
 +   using n32/64 abi.
 +   Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2011
@@ -468,7 +467,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +   in order to make the other specs easier to write.  */
 +#undef DRIVER_SELF_SPECS
 +#define DRIVER_SELF_SPECS \
-+  BASE_DRIVER_SELF_SPECS, \
 +  LINUX_DRIVER_SELF_SPECS \
 +  " %{!EB:%{!EL:%(endian_spec)}}" \
 +  " %{!mabi=*: -mabi=64}"
@@ -507,8 +505,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define MIPS_TFMODE_FORMAT mips_quad_format
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/linux.h gcc-4.6.1/gcc/config/riscv/linux.h
 --- ../gcc-4.6.1-orig/gcc/config/riscv/linux.h 1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/linux.h 2011-10-22 03:19:37.000000000 -0700
-@@ -0,0 +1,134 @@
++++ gcc-4.6.1/gcc/config/riscv/linux.h 2011-11-09 01:24:56.000000000 -0800
+@@ -0,0 +1,128 @@
 +/* Definitions for MIPS running Linux-based GNU systems with ELF format.
 +   Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
 +   2007, 2008, 2010, 2011 Free Software Foundation, Inc.
@@ -626,17 +624,11 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define MARCH_MTUNE_NATIVE_SPECS ""
 +
 +#define LINUX_DRIVER_SELF_SPECS \
-+  NO_SHARED_SPECS                                                     \
-+  MARCH_MTUNE_NATIVE_SPECS,                                           \
-+  /* -mplt has no effect without -mno-shared.  Simplify later         \
-+     specs handling by removing a redundant option.  */                       \
-+  "%{!mno-shared:%<mplt}",                                            \
-+  /* -mplt likewise has no effect for -mabi=64 without -msym32.  */   \
-+  "%{mabi=64:%{!msym32:%<mplt}}"
++  NO_SHARED_SPECS             \
++  MARCH_MTUNE_NATIVE_SPECS
 +
 +#undef DRIVER_SELF_SPECS
 +#define DRIVER_SELF_SPECS \
-+  BASE_DRIVER_SELF_SPECS, \
 +  LINUX_DRIVER_SELF_SPECS
 +
 +/* Similar to standard Linux, but adding -ffast-math support.  */
@@ -1026,8 +1018,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#endif /* _MIPS_H_ */
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/predicates.md gcc-4.6.1/gcc/config/riscv/predicates.md
 --- ../gcc-4.6.1-orig/gcc/config/riscv/predicates.md   1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/predicates.md   2011-11-03 02:32:31.000000000 -0700
-@@ -0,0 +1,209 @@
++++ gcc-4.6.1/gcc/config/riscv/predicates.md   2011-11-09 02:01:56.000000000 -0800
+@@ -0,0 +1,206 @@
 +;; Predicate definitions for MIPS.
 +;; Copyright (C) 2004, 2007, 2008 Free Software Foundation, Inc.
 +;;
@@ -1099,8 +1091,9 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  if (symbol_type == SYMBOL_ABSOLUTE)
 +    {
 +      /* We can only use direct calls if we're sure that the target
-+       function does not need $25 to be valid on entry.  */
-+      if (mips_use_pic_fn_addr_reg_p (op))
++       function does not need t7 to be valid on entry.  If we're
++       non-PIC, t7 can be set up using the PLT. */
++      if (TARGET_ABICALLS && flag_pic)
 +      return false;
 +
 +      /* If -mlong-calls or if this function has an explicit long_call
@@ -1225,10 +1218,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +(define_predicate "symbol_ref_operand"
 +  (match_code "symbol_ref"))
 +
-+(define_predicate "stack_operand"
-+  (and (match_code "mem")
-+       (match_test "mips_stack_address_p (XEXP (op, 0), GET_MODE (op))")))
-+
 +(define_predicate "equality_operator"
 +  (match_code "eq,ne"))
 +
@@ -1239,9 +1228,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  (match_code "eq,lt,le,gt,ge"))
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv.c gcc-4.6.1/gcc/config/riscv/riscv.c
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv.c 1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv.c 2011-11-03 16:54:11.000000000 -0700
-@@ -0,0 +1,6930 @@
-+/* vim: set ts=8: */
++++ gcc-4.6.1/gcc/config/riscv/riscv.c 2011-11-09 02:01:56.000000000 -0800
+@@ -0,0 +1,6481 @@
 +/* Subroutines used for MIPS code generation.
 +   Copyright (C) 1989, 1990, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
 +   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
@@ -1590,35 +1578,19 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +/* The current instruction-set architecture.  */
 +enum processor mips_arch;
-+const struct mips_cpu_info *mips_arch_info;
 +
 +/* The processor that we should tune the code for.  */
 +enum processor mips_tune;
-+const struct mips_cpu_info *mips_tune_info;
 +
 +/* The ISA level associated with mips_arch.  */
 +int mips_isa;
 +
-+/* The architecture selected by -mipsN, or null if -mipsN wasn't used.  */
-+static const struct mips_cpu_info *mips_isa_option_info;
-+
 +/* Which ABI to use.  */
 +int mips_abi = MIPS_ABI_DEFAULT;
 +
 +/* Which cost information to use.  */
 +static const struct mips_rtx_cost_data *mips_cost;
 +
-+/* The ambient target flags, excluding MASK_MIPS16.  */
-+static int mips_base_target_flags;
-+
-+/* The ambient values of other global variables.  */
-+static int mips_base_schedule_insns; /* flag_schedule_insns */
-+static int mips_base_reorder_blocks_and_partition; /* flag_reorder... */
-+static int mips_base_move_loop_invariants; /* flag_move_loop_invariants */
-+static int mips_base_align_loops; /* align_loops */
-+static int mips_base_align_jumps; /* align_jumps */
-+static int mips_base_align_functions; /* align_functions */
-+
 +/* Index [M][R] is true if register R is allowed to hold a value of mode M.  */
 +bool mips_hard_regno_mode_ok[(int) MAX_MACHINE_MODE][FIRST_PSEUDO_REGISTER];
 +
@@ -1707,7 +1679,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +   options correctly.  */
 +static const struct mips_cpu_info mips_cpu_info_table[] = {
 +  /* Entries for generic ISAs.  */
-+  { "rocket", PROCESSOR_ROCKET, ISA_RV64, 0 }
++  { "rocket32", PROCESSOR_ROCKET32, ISA_RV32, 0 },
++  { "rocket64", PROCESSOR_ROCKET64, ISA_RV64, 0 }
 +};
 +
 +/* Default costs.  If these are used for a processor we should look
@@ -1765,7 +1738,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  }
 +};
 +\f
-+static rtx mips_find_pic_call_symbol (rtx, rtx, bool);
 +static int mips_register_move_cost (enum machine_mode, reg_class_t,
 +                                  reg_class_t);
 +static unsigned int mips_function_arg_boundary (enum machine_mode, const_tree);
@@ -1903,81 +1875,25 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  return cost;
 +}
 +
-+/* Return true if symbols of type TYPE require a GOT access.  */
-+
-+static bool
-+mips_got_symbol_type_p (enum mips_symbol_type type)
-+{
-+  return type == SYMBOL_GOT_DISP;
-+}
-+
 +/* Return true if X is a thread-local symbol.  */
 +
 +static bool
-+mips_tls_symbol_p (rtx x)
++mips_tls_symbol_p (const_rtx x)
 +{
 +  return GET_CODE (x) == SYMBOL_REF && SYMBOL_REF_TLS_MODEL (x) != 0;
 +}
 +
-+/* Return true if SYMBOL_REF X binds locally.  */
-+
-+static bool
-+mips_symbol_binds_local_p (const_rtx x)
-+{
-+  return (SYMBOL_REF_DECL (x)
-+        ? targetm.binds_local_p (SYMBOL_REF_DECL (x))
-+        : SYMBOL_REF_LOCAL_P (x));
-+}
-+
-+/* Return true if calls to X might need $25 to be valid on entry.  */
-+
-+bool
-+mips_use_pic_fn_addr_reg_p (const_rtx x)
-+{
-+  if (!TARGET_USE_PIC_FN_ADDR_REG)
-+    return false;
-+
-+  if (GET_CODE (x) == SYMBOL_REF)
-+    {
-+      /* If PLTs and copy relocations are available, the static linker
-+       will make sure that $25 is valid on entry to the target function.  */
-+      if (TARGET_ABICALLS_PIC0)
-+      return false;
-+
-+      /* Locally-defined functions use absolute accesses to set up
-+       the global pointer.  */
-+      if (TARGET_ABSOLUTE_ABICALLS
-+        && mips_symbol_binds_local_p (x)
-+        && !SYMBOL_REF_EXTERNAL_P (x))
-+      return false;
-+    }
-+
-+  return true;
-+}
-+
 +/* Return the method that should be used to access SYMBOL_REF or
 +   LABEL_REF X in context CONTEXT.  */
 +
 +static enum mips_symbol_type
 +mips_classify_symbol (const_rtx x)
 +{
-+  if (GET_CODE (x) == LABEL_REF)
-+    {
-+      if (TARGET_ABICALLS && !TARGET_ABSOLUTE_ABICALLS)
-+      return SYMBOL_GOT_DISP;
-+
-+      return SYMBOL_ABSOLUTE;
-+    }
-+
-+  gcc_assert (GET_CODE (x) == SYMBOL_REF);
-+
-+  if (SYMBOL_REF_TLS_MODEL (x))
++  if (mips_tls_symbol_p (x))
 +    return SYMBOL_TLS;
 +
-+  /* Don't use GOT accesses for locally-binding symbols when -mno-shared
-+     is in effect.  */
-+  if (TARGET_ABICALLS_PIC2
-+      && !(TARGET_ABSOLUTE_ABICALLS && mips_symbol_binds_local_p (x)))
++  /* Don't use GOT accesses when -mno-shared is in effect.  */
++  if (TARGET_ABICALLS && flag_pic)
 +    return SYMBOL_GOT_DISP;
 +
 +  return SYMBOL_ABSOLUTE;
@@ -2047,7 +1963,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +       supports 32-bit symbols, the values of those symbols will be
 +       sign-extended.  In this case we can't allow an arbitrary offset
 +       in case the 32-bit value X + OFFSET has a different sign from X.  */
-+      if (Pmode == DImode && !ABI_HAS_64BIT_SYMBOLS)
++      if (Pmode == DImode)
 +      return offset_within_block_p (x, INTVAL (offset));
 +
 +      /* In other cases the relocations can handle any offset.  */
@@ -2174,16 +2090,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  return false;
 +}
 +
-+/* Implement TARGET_USE_BLOCKS_FOR_CONSTANT_P.  We can't use blocks for
-+   constants when we're using a per-function constant pool.  */
-+
-+static bool
-+mips_use_blocks_for_constant_p (enum machine_mode mode ATTRIBUTE_UNUSED,
-+                              const_rtx x ATTRIBUTE_UNUSED)
-+{
-+  return true;
-+}
-+\f
 +/* Return true if register REGNO is a valid base register for mode MODE.
 +   STRICT_P is true if REG_OK_STRICT is in effect.  */
 +
@@ -2226,7 +2132,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +static bool
 +mips_valid_offset_p (rtx x, enum machine_mode mode)
 +{
-+  /* Check that X is a signed 16-bit number.  */
++  /* Check that X is a signed 12-bit number.  */
 +  if (!const_arith_operand (x, Pmode))
 +    return false;
 +
@@ -2336,18 +2242,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  return mips_classify_address (&addr, x, mode, strict_p);
 +}
 +
-+/* Return true if X is a legitimate $sp-based address for mode MDOE.  */
-+
-+bool
-+mips_stack_address_p (rtx x, enum machine_mode mode)
-+{
-+  struct mips_address_info addr;
-+
-+  return (mips_classify_address (&addr, x, mode, false)
-+        && addr.type == ADDRESS_REG
-+        && addr.reg == stack_pointer_rtx);
-+}
-+
 +/* Return the number of instructions needed to load or store a value
 +   of mode MODE at address X.  Return 0 if X isn't valid for MODE.
 +   Assume that multiword moves may need to be split into word moves
@@ -2632,17 +2526,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  return gen_rtx_UNSPEC (Pmode, vec, UNSPEC_LOAD_CALL);
 +}
 +
-+/* If SRC is the RHS of a load_call<mode> insn, return the underlying symbol
-+   reference.  Return NULL_RTX otherwise.  */
-+
-+static rtx
-+mips_strip_unspec_call (rtx src)
-+{
-+  if (GET_CODE (src) == UNSPEC && XINT (src, 1) == UNSPEC_LOAD_CALL)
-+    return mips_strip_unspec_address (XVECEXP (src, 0, 1));
-+  return NULL_RTX;
-+}
-+
 +/* Create and return a GOT reference of type TYPE for address ADDR.
 +   TEMP, if nonnull, is a scratch Pmode base register.  */
 +
@@ -4006,14 +3889,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    return FP_ARG_FIRST + info->reg_offset;
 +}
 +
-+/* Implement TARGET_STRICT_ARGUMENT_NAMING.  */
-+
-+static bool
-+mips_strict_argument_naming (CUMULATIVE_ARGS *ca ATTRIBUTE_UNUSED)
-+{
-+  return true;
-+}
-+
 +/* Implement TARGET_FUNCTION_ARG.  */
 +
 +static rtx
@@ -4495,6 +4370,16 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    }
 +}
 +
++/* Return true if SYMBOL_REF X binds locally.  */
++
++static bool
++mips_symbol_binds_local_p (const_rtx x)
++{
++  return (SYMBOL_REF_DECL (x)
++        ? targetm.binds_local_p (SYMBOL_REF_DECL (x))
++        : SYMBOL_REF_LOCAL_P (x));
++}
++
 +/* Return true if calls to X can use R_MIPS_CALL* relocations.  */
 +
 +static bool
@@ -5051,42 +4936,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    }
 +}
 +
-+/* Implement TARGET_ASM_FUNCTION_RODATA_SECTION.
-+
-+   The complication here is that, with the combination TARGET_ABICALLS
-+   && !TARGET_ABSOLUTE_ABICALLS && !TARGET_GPWORD, jump tables will use
-+   absolute addresses, and should therefore not be included in the
-+   read-only part of a DSO.  Handle such cases by selecting a normal
-+   data section instead of a read-only one.  The logic apes that in
-+   default_function_rodata_section.  */
-+
-+static section *
-+mips_function_rodata_section (tree decl)
-+{
-+  if (!TARGET_ABICALLS || TARGET_ABSOLUTE_ABICALLS || TARGET_GPWORD)
-+    return default_function_rodata_section (decl);
-+
-+  if (decl && DECL_SECTION_NAME (decl))
-+    {
-+      const char *name = TREE_STRING_POINTER (DECL_SECTION_NAME (decl));
-+      if (DECL_ONE_ONLY (decl) && strncmp (name, ".gnu.linkonce.t.", 16) == 0)
-+      {
-+        char *rname = ASTRDUP (name);
-+        rname[14] = 'd';
-+        return get_section (rname, SECTION_LINKONCE | SECTION_WRITE, decl);
-+      }
-+      else if (flag_function_sections
-+             && flag_data_sections
-+             && strncmp (name, ".text.", 6) == 0)
-+      {
-+        char *rname = ASTRDUP (name);
-+        memcpy (rname + 1, "data", 4);
-+        return get_section (rname, SECTION_WRITE, decl);
-+      }
-+    }
-+  return data_section;
-+}
-+
 +/* The MIPS debug format wants all automatic variables and arguments
 +   to be in terms of the virtual frame pointer (stack pointer before
 +   any adjustment in the function), while the MIPS 3.0 linker wants
@@ -5358,11 +5207,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +      {
 +      int attr;
 +
-+      /* No floating-point operations, -mno-float.  */
-+      if (TARGET_NO_FLOAT)
-+        attr = 0;
 +      /* Soft-float code, -msoft-float.  */
-+      else if (!TARGET_HARD_FLOAT_ABI)
++      if (!TARGET_HARD_FLOAT_ABI)
 +        attr = 3;
 +      /* 64-bit FP registers on a 32-bit target. */
 +      else if (!TARGET_64BIT)
@@ -5380,7 +5226,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  if (TARGET_ABICALLS)
 +    {
 +      fprintf (asm_out_file, "\t.abicalls\n");
-+      if (TARGET_ABICALLS_PIC0)
++      if (!flag_pic)
 +      fprintf (asm_out_file, "\t.option\tpic0\n");
 +    }
 +}
@@ -5551,58 +5397,19 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  return cfun->machine->must_initialize_gp_p;
 +}
 +
-+/* Return true if the current function should treat register REGNO
-+   as call-saved.  */
-+
-+static bool
-+mips_cfun_call_saved_reg_p (unsigned int regno)
-+{
-+  /* If the user makes an ordinarily-call-saved register global,
-+     that register is no longer call-saved.  */
-+  if (global_regs[regno])
-+    return false;
-+
-+  return !call_really_used_regs[regno];
-+}
-+
-+/* Return true if the function body might clobber register REGNO.
-+   We know that REGNO is call-saved.  */
-+
-+static bool
-+mips_cfun_might_clobber_call_saved_reg_p (unsigned int regno)
-+{
-+  /* Some functions should be treated as clobbering all call-saved
-+     registers.  */
-+  if (crtl->saves_all_registers)
-+    return true;
-+
-+  /* DF handles cases where a register is explicitly referenced in
-+     the rtl.  Incoming values are passed in call-clobbered registers,
-+     so we can assume that any live call-saved register is set within
-+     the function.  */
-+  if (df_regs_ever_live_p (regno))
-+    return true;
-+
-+  /* If we're using a call-saved global pointer, the function's
-+     prologue will need to set it up.  */
-+  if (cfun->machine->global_pointer == regno)
-+    return true;
-+
-+  /* The function's prologue will need to set the frame pointer if
-+     frame_pointer_needed.  */
-+  if (regno == HARD_FRAME_POINTER_REGNUM && frame_pointer_needed)
-+    return true;
-+
-+  return false;
-+}
-+
 +/* Return true if the current function must save register REGNO.  */
 +
 +static bool
 +mips_save_reg_p (unsigned int regno)
 +{
-+  bool clobbered = mips_cfun_might_clobber_call_saved_reg_p (regno);
-+  return (mips_cfun_call_saved_reg_p (regno) && clobbered)
++  bool call_saved = !global_regs[regno] && !call_really_used_regs[regno];
++  bool might_clobber = crtl->saves_all_registers
++                     || df_regs_ever_live_p (regno)
++                     || cfun->machine->global_pointer == regno
++                     || (regno == HARD_FRAME_POINTER_REGNUM
++                         && frame_pointer_needed);
++
++  return (call_saved && might_clobber)
 +       || (regno == RETURN_ADDR_REGNUM && crtl->calls_eh_return);
 +}
 +
@@ -5790,7 +5597,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  if (!TARGET_USE_GOT || cfun->machine->global_pointer == INVALID_REGNUM)
 +    return LOADGP_NONE;
 +
-+  if (TARGET_ABSOLUTE_ABICALLS)
++  if (TARGET_ABICALLS && !flag_pic)
 +    return LOADGP_ABSOLUTE;
 +
 +  return LOADGP_NEWABI;
@@ -5855,7 +5662,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    {
 +      /* PIC_FUNCTION_ADDR_REGNUM is live if we need it to set up
 +       the global pointer.   */
-+      if (!TARGET_ABSOLUTE_ABICALLS)
++      if (flag_pic)
 +      bitmap_set_bit (regs, PIC_FUNCTION_ADDR_REGNUM);
 +
 +      /* See the comment above load_call<mode> for details.  */
@@ -6418,9 +6225,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    case DFmode:
 +      return TARGET_HARD_FLOAT;
 +
-+    case V2SFmode:
-+      return TARGET_HARD_FLOAT && TARGET_PAIRED_SINGLE_FLOAT;
-+
 +    default:
 +      return false;
 +    }
@@ -6721,7 +6525,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +{
 +  switch (mips_tune)
 +    {
-+    case PROCESSOR_ROCKET:
++    case PROCESSOR_ROCKET32:
++    case PROCESSOR_ROCKET64:
 +      return 1;
 +
 +    default:
@@ -7083,192 +6888,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  gcc_unreachable ();
 +}
 +
-+/* Return whether CFG is used in mips_reorg.  */
-+
-+static bool
-+mips_cfg_in_reorg (void)
-+{
-+  return TARGET_RELAX_PIC_CALLS;
-+}
-+
-+/* If INSN is a call, return the underlying CALL expr.  Return NULL_RTX
-+   otherwise.  If INSN has two call rtx, then store the second one in
-+   SECOND_CALL.  */
-+
-+static rtx
-+mips_call_expr_from_insn (rtx insn, rtx *second_call)
-+{
-+  rtx x;
-+  rtx x2;
-+
-+  if (!CALL_P (insn))
-+    return NULL_RTX;
-+
-+  x = PATTERN (insn);
-+  if (GET_CODE (x) == PARALLEL)
-+    {
-+      /* Calls returning complex values have two CALL rtx.  Look for the second
-+       one here, and return it via the SECOND_CALL arg.  */
-+      x2 = XVECEXP (x, 0, 1);
-+      if (GET_CODE (x2) == SET)
-+      x2 = XEXP (x2, 1);
-+      if (GET_CODE (x2) == CALL)
-+      *second_call = x2;
-+
-+      x = XVECEXP (x, 0, 0);
-+    }
-+  if (GET_CODE (x) == SET)
-+    x = XEXP (x, 1);
-+  gcc_assert (GET_CODE (x) == CALL);
-+
-+  return x;
-+}
-+
-+/* REG is set in DEF.  See if the definition is one of the ways we load a
-+   register with a symbol address for a mips_use_pic_fn_addr_reg_p call.
-+   If it is, return the symbol reference of the function, otherwise return
-+   NULL_RTX.
-+
-+   If RECURSE_P is true, use mips_find_pic_call_symbol to interpret
-+   the values of source registers, otherwise treat such registers as
-+   having an unknown value.  */
-+
-+static rtx
-+mips_pic_call_symbol_from_set (df_ref def, rtx reg, bool recurse_p)
-+{
-+  rtx def_insn, set;
-+
-+  if (DF_REF_IS_ARTIFICIAL (def))
-+    return NULL_RTX;
-+
-+  def_insn = DF_REF_INSN (def);
-+  set = single_set (def_insn);
-+  if (set && rtx_equal_p (SET_DEST (set), reg))
-+    {
-+      rtx note, src, symbol;
-+
-+      /* First, look at REG_EQUAL/EQUIV notes.  */
-+      note = find_reg_equal_equiv_note (def_insn);
-+      if (note && GET_CODE (XEXP (note, 0)) == SYMBOL_REF)
-+      return XEXP (note, 0);
-+
-+      /* For %call16 references we don't have REG_EQUAL.  */
-+      src = SET_SRC (set);
-+      symbol = mips_strip_unspec_call (src);
-+      if (symbol)
-+      {
-+        gcc_assert (GET_CODE (symbol) == SYMBOL_REF);
-+        return symbol;
-+      }
-+
-+      /* Follow at most one simple register copy.  Such copies are
-+       interesting in cases like:
-+
-+           for (...)
-+             {
-+               locally_binding_fn (...);
-+             }
-+
-+       and:
-+
-+           locally_binding_fn (...);
-+           ...
-+           locally_binding_fn (...);
-+
-+       where the load of locally_binding_fn can legitimately be
-+       hoisted or shared.  However, we do not expect to see complex
-+       chains of copies, so a full worklist solution to the problem
-+       would probably be overkill.  */
-+      if (recurse_p && REG_P (src))
-+      return mips_find_pic_call_symbol (def_insn, src, false);
-+    }
-+
-+  return NULL_RTX;
-+}
-+
-+/* Find the definition of the use of REG in INSN.  See if the definition
-+   is one of the ways we load a register with a symbol address for a
-+   mips_use_pic_fn_addr_reg_p call.  If it is return the symbol reference
-+   of the function, otherwise return NULL_RTX.  RECURSE_P is as for
-+   mips_pic_call_symbol_from_set.  */
-+
-+static rtx
-+mips_find_pic_call_symbol (rtx insn, rtx reg, bool recurse_p)
-+{
-+  df_ref use;
-+  struct df_link *defs;
-+  rtx symbol;
-+
-+  use = df_find_use (insn, regno_reg_rtx[REGNO (reg)]);
-+  if (!use)
-+    return NULL_RTX;
-+  defs = DF_REF_CHAIN (use);
-+  if (!defs)
-+    return NULL_RTX;
-+  symbol = mips_pic_call_symbol_from_set (defs->ref, reg, recurse_p);
-+  if (!symbol)
-+    return NULL_RTX;
-+
-+  /* If we have more than one definition, they need to be identical.  */
-+  for (defs = defs->next; defs; defs = defs->next)
-+    {
-+      rtx other;
-+
-+      other = mips_pic_call_symbol_from_set (defs->ref, reg, recurse_p);
-+      if (!rtx_equal_p (symbol, other))
-+      return NULL_RTX;
-+    }
-+
-+  return symbol;
-+}
-+
-+/* Replace the args_size operand of the call expression CALL with the
-+   call-attribute UNSPEC and fill in SYMBOL as the function symbol.  */
-+
-+static void
-+mips_annotate_pic_call_expr (rtx call, rtx symbol)
-+{
-+  rtx args_size;
-+
-+  args_size = XEXP (call, 1);
-+  XEXP (call, 1) = gen_rtx_UNSPEC (GET_MODE (args_size),
-+                                 gen_rtvec (2, args_size, symbol),
-+                                 UNSPEC_CALL_ATTR);
-+}
-+
-+/* Use DF to annotate PIC indirect calls with the function symbol they
-+   dispatch to.  */
-+
-+static void
-+mips_annotate_pic_calls (void)
-+{
-+  basic_block bb;
-+  rtx insn;
-+
-+  FOR_EACH_BB (bb)
-+    FOR_BB_INSNS (bb, insn)
-+    {
-+      rtx call, reg, symbol, second_call;
-+
-+      second_call = 0;
-+      call = mips_call_expr_from_insn (insn, &second_call);
-+      if (!call)
-+      continue;
-+      gcc_assert (MEM_P (XEXP (call, 0)));
-+      reg = XEXP (XEXP (call, 0), 0);
-+      if (!REG_P (reg))
-+      continue;
-+
-+      symbol = mips_find_pic_call_symbol (insn, reg, true);
-+      if (symbol)
-+      {
-+        mips_annotate_pic_call_expr (call, symbol);
-+        if (second_call)
-+          mips_annotate_pic_call_expr (second_call, symbol);
-+      }
-+    }
-+}
-+
 +/* This structure records that the current function has a LO_SUM
 +   involving SYMBOL_REF or LABEL_REF BASE and that MAX_OFFSET is
 +   the largest offset applied to BASE by all such LO_SUMs.  */
@@ -7414,38 +7033,11 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  htab_delete (htab);
 +}
 +
-+/* Subroutine of mips_reorg to manage passes that require DF.  */
-+
-+static void
-+mips_df_reorg (void)
-+{
-+  /* Create def-use chains.  */
-+  df_set_flags (DF_EQ_NOTES);
-+  df_chain_add_problem (DF_UD_CHAIN);
-+  df_analyze ();
-+
-+  if (TARGET_RELAX_PIC_CALLS)
-+    mips_annotate_pic_calls ();
-+
-+  df_finish_pass (false);
-+}
-+
 +/* Implement TARGET_MACHINE_DEPENDENT_REORG.  */
 +
 +static void
 +mips_reorg (void)
 +{
-+  /* Restore the BLOCK_FOR_INSN pointers, which are needed by DF.  Also during
-+     insn splitting in mips16_lay_out_constants, DF insn info is only kept up
-+     to date if the CFG is available.  */
-+  if (mips_cfg_in_reorg ())
-+    compute_bb_for_insn ();
-+  if (mips_cfg_in_reorg ())
-+    {
-+      mips_df_reorg ();
-+      free_bb_for_insn ();
-+    }
-+
 +  mips_reorg_process_insns ();
 +}
 +\f
@@ -7471,8 +7063,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  use_sibcall_p = const_call_insn_operand (fnaddr, Pmode);
 +
 +  /* Determine if we need to load FNADDR from the GOT.  */
-+  if (!use_sibcall_p
-+      && (mips_got_symbol_type_p (mips_classify_symbol (fnaddr))))
++  if (!use_sibcall_p && mips_classify_symbol (fnaddr) == SYMBOL_GOT_DISP)
 +    {
 +      cfun->machine->global_pointer = GLOBAL_POINTER_REGNUM - GP_REG_FIRST;
 +      cfun->machine->must_initialize_gp_p = true;
@@ -7529,7 +7120,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    }
 +  else
 +    {
-+      if (TARGET_USE_PIC_FN_ADDR_REG)
++      if (TARGET_ABICALLS)
 +      temp1 = gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM);
 +      mips_load_call_address (MIPS_CALL_SIBCALL, temp1, fnaddr);
 +      emit_jump_insn (gen_indirect_jump (temp1));
@@ -7645,9 +7236,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +     EABIs, we have to decide whether we're using the 32-bit or 64-bit
 +     version.  */
 +  if (strcasecmp (cpu_string, "from-abi") == 0)
-+    return mips_cpu_info_from_isa (ABI_NEEDS_32BIT_REGS ? ISA_RV32
-+                                 : ABI_NEEDS_64BIT_REGS ? ISA_RV64
-+                                 : (TARGET_64BIT ? ISA_RV64 : ISA_RV32));
++    return mips_cpu_info_from_isa (TARGET_64BIT ? ISA_RV32 : ISA_RV64);
 +
 +  for (i = 0; i < ARRAY_SIZE (mips_cpu_info_table); i++)
 +    if (mips_matching_cpu_name_p (mips_cpu_info_table[i].name, cpu_string))
@@ -7664,8 +7253,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +{
 +  if (info != 0)
 +    {
-+      mips_arch_info = info;
-+      mips_arch = info->cpu;
++      mips_tune = mips_arch = info->cpu;
 +      mips_isa = info->isa;
 +    }
 +}
@@ -7676,10 +7264,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +mips_set_tune (const struct mips_cpu_info *info)
 +{
 +  if (info != 0)
-+    {
-+      mips_tune_info = info;
-+      mips_tune = info->cpu;
-+    }
++    mips_tune = info->cpu;
 +}
 +
 +/* Implement TARGET_HANDLE_OPTION.  */
@@ -7702,10 +7287,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +    case OPT_mtune_:
 +      return mips_parse_cpu (arg) != 0;
 +
-+    case OPT_mips:
-+      mips_isa_option_info = mips_parse_cpu (ACONCAT (("mips", arg, NULL)));
-+      return mips_isa_option_info != 0;
-+
 +    default:
 +      return true;
 +    }
@@ -7717,51 +7298,27 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +mips_option_override (void)
 +{
 +  int i, start, regno, mode;
++  const struct mips_cpu_info *info = 0;
 +
 +#ifdef SUBTARGET_OVERRIDE_OPTIONS
 +  SUBTARGET_OVERRIDE_OPTIONS;
 +#endif
 +
-+  /* -mno-float overrides -mhard-float and -msoft-float.  */
-+  if (TARGET_NO_FLOAT)
-+    {
-+      target_flags |= MASK_SOFT_FLOAT_ABI;
-+      target_flags_explicit |= MASK_SOFT_FLOAT_ABI;
-+    }
-+
 +  /* The following code determines the architecture and register size.
 +     Similar code was added to GAS 2.14 (see tc-mips.c:md_after_parse_args()).
 +     The GAS and GCC code should be kept in sync as much as possible.  */
 +
 +  if (mips_arch_string != 0)
-+    mips_set_architecture (mips_parse_cpu (mips_arch_string));
-+
-+  if (mips_isa_option_info != 0)
-+    {
-+      if (mips_arch_info == 0)
-+      mips_set_architecture (mips_isa_option_info);
-+      else if (mips_arch_info->isa != mips_isa_option_info->isa)
-+      error ("%<-%s%> conflicts with the other architecture options, "
-+             "which specify a %s processor",
-+             mips_isa_option_info->name,
-+             mips_cpu_info_from_isa (mips_arch_info->isa)->name);
-+    }
-+
-+  if (mips_arch_info == 0)
-+      mips_set_architecture (mips_parse_cpu (MIPS_CPU_STRING_DEFAULT));
++    info = mips_parse_cpu (mips_arch_string);
++  if (info == 0)
++    info = mips_parse_cpu (MIPS_CPU_STRING_DEFAULT);
++  gcc_assert (info);
++  mips_set_architecture (info);
 +
 +  /* Optimize for mips_arch, unless -mtune selects a different processor.  */
 +  if (mips_tune_string != 0)
 +    mips_set_tune (mips_parse_cpu (mips_tune_string));
 +
-+  if (mips_tune_info == 0)
-+    mips_set_tune (mips_arch_info);
-+
-+  if (ABI_NEEDS_32BIT_REGS)
-+    target_flags &= ~MASK_64BIT;
-+  else
-+    target_flags |= MASK_64BIT;
-+
 +  /* End of code shared with GAS.  */
 +
 +  flag_pcc_struct_return = 0;
@@ -7779,8 +7336,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +  if (flag_pic)
 +    target_flags |= MASK_ABICALLS;
-+  else
-+    TARGET_SHARED = 0;
 +
 +  /* Prefer a call to memcpy over inline code when optimizing for size,
 +     though see MOVE_RATIO in mips.h.  */
@@ -7825,19 +7380,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  /* Function to allocate machine-dependent function status.  */
 +  init_machine_status = &mips_init_machine_status;
 +
-+  /* Only optimize PIC indirect calls if they are actually required.  */
-+  if (!TARGET_USE_GOT)
-+    target_flags &= ~MASK_RELAX_PIC_CALLS;
-+
-+  /* Save base state of options.  */
-+  mips_base_target_flags = target_flags;
-+  mips_base_schedule_insns = flag_schedule_insns;
-+  mips_base_reorder_blocks_and_partition = flag_reorder_blocks_and_partition;
-+  mips_base_move_loop_invariants = flag_move_loop_invariants;
-+  mips_base_align_loops = align_loops;
-+  mips_base_align_jumps = align_jumps;
-+  mips_base_align_functions = align_functions;
-+
 +  targetm.min_anchor_offset = -RISCV_IMM_REACH/2;
 +  targetm.max_anchor_offset = RISCV_IMM_REACH/2-1;
 +
@@ -8009,8 +7551,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define TARGET_ASM_FUNCTION_PROLOGUE mips_output_function_prologue
 +#undef TARGET_ASM_FUNCTION_EPILOGUE
 +#define TARGET_ASM_FUNCTION_EPILOGUE mips_output_function_epilogue
-+#undef TARGET_ASM_FUNCTION_RODATA_SECTION
-+#define TARGET_ASM_FUNCTION_RODATA_SECTION mips_function_rodata_section
 +
 +#undef TARGET_SCHED_VARIABLE_ISSUE
 +#define TARGET_SCHED_VARIABLE_ISSUE mips_variable_issue
@@ -8081,7 +7621,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#undef TARGET_SETUP_INCOMING_VARARGS
 +#define TARGET_SETUP_INCOMING_VARARGS mips_setup_incoming_varargs
 +#undef TARGET_STRICT_ARGUMENT_NAMING
-+#define TARGET_STRICT_ARGUMENT_NAMING mips_strict_argument_naming
++#define TARGET_STRICT_ARGUMENT_NAMING hook_bool_CUMULATIVE_ARGS_true
 +#undef TARGET_MUST_PASS_IN_STACK
 +#define TARGET_MUST_PASS_IN_STACK must_pass_in_stack_var_size
 +#undef TARGET_PASS_BY_REFERENCE
@@ -8134,7 +7674,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define TARGET_EXTRA_LIVE_ON_ENTRY mips_extra_live_on_entry
 +
 +#undef TARGET_USE_BLOCKS_FOR_CONSTANT_P
-+#define TARGET_USE_BLOCKS_FOR_CONSTANT_P mips_use_blocks_for_constant_p
++#define TARGET_USE_BLOCKS_FOR_CONSTANT_P hook_bool_mode_const_rtx_true
 +
 +#undef  TARGET_COMP_TYPE_ATTRIBUTES
 +#define TARGET_COMP_TYPE_ATTRIBUTES mips_comp_type_attributes
@@ -8303,9 +7843,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +DEF_MIPS_FTYPE (2, (VOID, V4QI, V4QI))
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv.h gcc-4.6.1/gcc/config/riscv/riscv.h
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv.h 1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv.h 2011-11-03 19:13:54.000000000 -0700
-@@ -0,0 +1,1896 @@
-+/* vim: set ts=8: */
++++ gcc-4.6.1/gcc/config/riscv/riscv.h 2011-11-09 01:24:21.000000000 -0800
+@@ -0,0 +1,1749 @@
 +/* Definitions of target machine for GNU compiler.  MIPS version.
 +   Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998
 +   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
@@ -8374,98 +7913,20 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define BITMASK_UPPER16       ((unsigned long)0xffff << 16)   /* 0xffff0000 */
 +#define BITMASK_LOWER16       ((unsigned long)0xffff)         /* 0x0000ffff */
 +
-+\f
-+/* Run-time compilation parameters selecting different hardware subsets.  */
-+
-+/* True if the output file is marked as ".abicalls; .option pic0"
-+   (-call_nonpic).  */
-+#define TARGET_ABICALLS_PIC0 \
-+  (TARGET_ABSOLUTE_ABICALLS && TARGET_PLT)
-+
-+/* True if the output file is marked as ".abicalls; .option pic2" (-KPIC).  */
-+#define TARGET_ABICALLS_PIC2 \
-+  (TARGET_ABICALLS && !TARGET_ABICALLS_PIC0)
-+
-+/* True if we're generating a form of -mabicalls in which we can use
-+   operators like %hi and %lo to refer to locally-binding symbols.
-+   We can only do this for -mno-shared, and only then if we can use
-+   relocation operations instead of assembly macros.  It isn't really
-+   worth using absolute sequences for 64-bit symbols because GOT
-+   accesses are so much shorter.  */
-+
-+#define TARGET_ABSOLUTE_ABICALLS      \
-+  (TARGET_ABICALLS                    \
-+   && !TARGET_SHARED                  \
-+   && !ABI_HAS_64BIT_SYMBOLS)
-+
-+/* True if we can optimize sibling calls.  For simplicity, we only
-+   handle cases in which call_insn_operand will reject invalid
-+   sibcall addresses.  There are two cases in which this isn't true:
-+
-+      - TARGET_MIPS16.  call_insn_operand accepts constant addresses
-+      but there is no direct jump instruction.  It isn't worth
-+      using sibling calls in this case anyway; they would usually
-+      be longer than normal calls.
-+
-+      - TARGET_USE_GOT && !TARGET_EXPLICIT_RELOCS.  call_insn_operand
-+      accepts global constants, but all sibcalls must be indirect.  */
-+#define TARGET_SIBCALLS 1
-+
 +/* True if we need to use a global offset table to access some symbols.  */
 +#define TARGET_USE_GOT TARGET_ABICALLS
 +
-+/* True if TARGET_USE_GOT and if $gp is a call-saved register.  */
-+#define TARGET_CALL_SAVED_GP TARGET_USE_GOT
-+
-+/* True if indirect calls must use register class PIC_FN_ADDR_REG.
-+   This is true for both the PIC and non-PIC VxWorks RTP modes.  */
-+#define TARGET_USE_PIC_FN_ADDR_REG TARGET_ABICALLS
-+
-+/* True if .gpword or .gpdword should be used for switch tables.
-+
-+   Although GAS does understand .gpdword, the SGI linker mishandles
-+   the relocations GAS generates (R_MIPS_GPREL32 followed by R_MIPS_64).
-+   We therefore disable GP-relative switch tables for n64 on IRIX targets.  */
-+#define TARGET_GPWORD                         \
-+  (TARGET_ABICALLS                            \
-+   && !TARGET_ABSOLUTE_ABICALLS                       \
-+   && !(mips_abi == ABI_64 && TARGET_IRIX6))
++/* True if .gpword or .gpdword should be used for switch tables. */
++#define TARGET_GPWORD (TARGET_ABICALLS && flag_pic)
 +
 +/* True if the output must have a writable .eh_frame.
 +   See ASM_PREFERRED_EH_DATA_FORMAT for details.  */
 +#ifdef HAVE_LD_PERSONALITY_RELAXATION
 +#define TARGET_WRITABLE_EH_FRAME 0
 +#else
-+#define TARGET_WRITABLE_EH_FRAME (flag_pic && TARGET_SHARED)
++#define TARGET_WRITABLE_EH_FRAME flag_pic
 +#endif
 +
-+/* Architecture target defines.  */
-+#define TARGET_LOONGSON_2E          (mips_arch == PROCESSOR_LOONGSON_2E)
-+#define TARGET_LOONGSON_2F          (mips_arch == PROCESSOR_LOONGSON_2F)
-+#define TARGET_LOONGSON_2EF         (TARGET_LOONGSON_2E || TARGET_LOONGSON_2F)
-+#define TARGET_LOONGSON_3A          (mips_arch == PROCESSOR_LOONGSON_3A)
-+#define TARGET_MIPS3900             (mips_arch == PROCESSOR_R3900)
-+#define TARGET_MIPS4000             (mips_arch == PROCESSOR_R4000)
-+#define TARGET_MIPS4120             (mips_arch == PROCESSOR_R4120)
-+#define TARGET_MIPS4130             (mips_arch == PROCESSOR_R4130)
-+#define TARGET_MIPS5400             (mips_arch == PROCESSOR_R5400)
-+#define TARGET_MIPS5500             (mips_arch == PROCESSOR_R5500)
-+#define TARGET_MIPS7000             (mips_arch == PROCESSOR_R7000)
-+#define TARGET_MIPS9000             (mips_arch == PROCESSOR_R9000)
-+#define TARGET_OCTEON             (mips_arch == PROCESSOR_OCTEON)
-+#define TARGET_SB1                  (mips_arch == PROCESSOR_SB1               \
-+                                   || mips_arch == PROCESSOR_SB1A)
-+#define TARGET_SR71K                (mips_arch == PROCESSOR_SR71000)
-+
-+/* Whether vector modes and intrinsics for ST Microelectronics
-+   Loongson-2E/2F processors should be enabled.  In o32 pairs of
-+   floating-point registers provide 64-bit values.  */
-+#define TARGET_LOONGSON_VECTORS           (TARGET_HARD_FLOAT_ABI              \
-+                                   && (TARGET_LOONGSON_2EF            \
-+                                       || TARGET_LOONGSON_3A))
-+
-+#define TARGET_NEWABI             1
-+
 +/* TARGET_HARD_FLOAT and TARGET_SOFT_FLOAT reflect whether the FPU is
 +   directly accessible, while the command-line options select
 +   TARGET_HARD_FLOAT_ABI and TARGET_SOFT_FLOAT_ABI to reflect the ABI
@@ -8473,36 +7934,9 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define TARGET_HARD_FLOAT TARGET_HARD_FLOAT_ABI
 +#define TARGET_SOFT_FLOAT TARGET_SOFT_FLOAT_ABI
 +
-+/* False if SC acts as a memory barrier with respect to itself,
-+   otherwise a SYNC will be emitted after SC for atomic operations
-+   that require ordering between the SC and following loads and
-+   stores.  It does not tell anything about ordering of loads and
-+   stores prior to and following the SC, only about the SC itself and
-+   those loads and stores follow it.  */
-+#define TARGET_SYNC_AFTER_SC (!TARGET_OCTEON)
-+
 +/* IRIX specific stuff.  */
 +#define TARGET_IRIX6     0
 +
-+/* Define preprocessor macros for the -march and -mtune options.
-+   PREFIX is either _MIPS_ARCH or _MIPS_TUNE, INFO is the selected
-+   processor.  If INFO's canonical name is "foo", define PREFIX to
-+   be "foo", and define an additional macro PREFIX_FOO.  */
-+#define MIPS_CPP_SET_PROCESSOR(PREFIX, INFO)                  \
-+  do                                                          \
-+    {                                                         \
-+      char *macro, *p;                                                \
-+                                                              \
-+      macro = concat ((PREFIX), "_", (INFO)->name, NULL);     \
-+      for (p = macro; *p != 0; p++)                           \
-+      *p = TOUPPER (*p);                                      \
-+                                                              \
-+      builtin_define (macro);                                 \
-+      builtin_define_with_value ((PREFIX), (INFO)->name, 1);  \
-+      free (macro);                                           \
-+    }                                                         \
-+  while (0)
-+
 +/* Target CPU builtins.  */
 +#define TARGET_CPU_CPP_BUILTINS()                                     \
 +  do                                                                  \
@@ -8517,9 +7951,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +      if (TARGET_64BIT)                                                       \
 +      builtin_define ("__riscv64");                                   \
 +                                                                      \
-+      MIPS_CPP_SET_PROCESSOR ("_RISCV_ARCH", mips_arch_info);         \
-+      MIPS_CPP_SET_PROCESSOR ("_RISCV_TUNE", mips_tune_info);         \
-+                                                                      \
 +      builtin_define ("_ABI32=1");                                    \
 +      builtin_define ("_ABI64=2");                                    \
 +                                                                      \
@@ -8541,9 +7972,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +                                                                      \
 +      /* These defines reflect the ABI in use, not whether the        \
 +       FPU is directly accessible.  */                                \
-+      if (TARGET_NO_FLOAT)                                            \
-+      builtin_define ("__riscv_no_float");                            \
-+      else if (TARGET_HARD_FLOAT_ABI)                                 \
++      if (TARGET_HARD_FLOAT_ABI)                                      \
 +      builtin_define ("__riscv_hard_float");                          \
 +      else                                                            \
 +      builtin_define ("__riscv_soft_float");                          \
@@ -8632,7 +8061,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#endif
 +
 +#ifndef MIPS_ABI_DEFAULT
-+#define MIPS_ABI_DEFAULT ABI_32
++#define MIPS_ABI_DEFAULT ABI_64
 +#endif
 +
 +#if MIPS_ABI_DEFAULT == ABI_32
@@ -8730,35 +8159,10 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  {"tune_64", "%{" OPT_ARCH64 ":%{!mtune=*:-mtune=%(VALUE)}}" }, \
 +  {"abi", "%{!mabi=*:-mabi=%(VALUE)}" }, \
 +  {"float", "%{!msoft-float:%{!mhard-float:-m%(VALUE)-float}}" }, \
-+  {"divide", "%{!mdivide-traps:%{!mdivide-breaks:-mdivide-%(VALUE)}}" }, \
-+  {"llsc", "%{!mllsc:%{!mno-llsc:-m%(VALUE)}}" }, \
-+  {"mips-plt", "%{!mplt:%{!mno-plt:-m%(VALUE)}}" }, \
-+  {"synci", "%{!msynci:%{!mno-synci:-m%(VALUE)}}" }
-+
-+
-+/* A spec that infers the -mdsp setting from an -march argument.  */
-+#define BASE_DRIVER_SELF_SPECS \
-+  "%{!mno-dsp: \
-+     %{march=24ke*|march=34k*|march=1004k*: -mdsp} \
-+     %{march=74k*:%{!mno-dspr2: -mdspr2 -mdsp}}}"
-+
-+#define DRIVER_SELF_SPECS BASE_DRIVER_SELF_SPECS
 +
-+/* True if the ABI can only work with 64-bit integer registers. */
-+#define ABI_NEEDS_64BIT_REGS  (mips_abi == ABI_64)
++#define DRIVER_SELF_SPECS
 +
-+/* Likewise for 32-bit regs.  */
-+#define ABI_NEEDS_32BIT_REGS  (mips_abi == ABI_32)
-+
-+/* True if the file format uses 64-bit symbols.  At present, this is
-+   only true for n64, which uses 64-bit ELF.  */
-+#define FILE_HAS_64BIT_SYMBOLS        (mips_abi == ABI_64)
-+
-+/* True if symbols are 64 bits wide.  This is usually determined by
-+   the ABI's file format, but it can be overridden by -msym32.  Note that
-+   overriding the size with -msym32 changes the ABI of relocatable objects,
-+   although it doesn't change the ABI of a fully-linked object.  */
-+#define ABI_HAS_64BIT_SYMBOLS (FILE_HAS_64BIT_SYMBOLS && !TARGET_SYM32)
++#define TARGET_64BIT  (mips_abi == ABI_64)
 +
 +/* Tell collect what flags to pass to nm.  */
 +#ifndef NM_FLAGS
@@ -8794,7 +8198,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +%{mabi=*} %{!mabi=*: %(asm_abi_default_spec)} \
 +%{mgp32} %{mgp64} %{march=*} \
 +%{mshared} %{mno-shared} \
-+%{msym32} %{mno-sym32} \
 +%{mtune=*} \
 +%(subtarget_asm_spec)"
 +
@@ -8863,14 +8266,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
 +#endif
 +
-+/* The size of DWARF addresses should be the same as the size of symbols
-+   in the target file format.  They shouldn't depend on things like -msym32,
-+   because many DWARF consumers do not allow the mixture of address sizes
-+   that one would then get from linking -msym32 code with -msym64 code.
-+
-+   Note that the default POINTER_SIZE test is not appropriate for MIPS.
-+   EABI64 has 64-bit pointers but uses 32-bit ELF.  */
-+#define DWARF2_ADDR_SIZE (FILE_HAS_64BIT_SYMBOLS ? 8 : 4)
++#define DWARF2_ADDR_SIZE UNITS_PER_WORD
 +
 +/* By default, turn on GDB extensions.  */
 +#define DEFAULT_GDB_EXTENSIONS 1
@@ -9647,7 +9043,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +/* Treat LOC as a byte offset from the stack pointer and round it up
 +   to the next fully-aligned offset.  */
 +#define MIPS_STACK_ALIGN(LOC) \
-+  (TARGET_NEWABI ? ((LOC) + 15) & -16 : ((LOC) + 7) & -8)
++  (TARGET_64BIT ? ((LOC) + 15) & -16 : ((LOC) + 7) & -8)
 +
 +/* No mips port has ever used the profiler counter word, so don't emit it
 +   or the label for it.  */
@@ -10165,10 +9561,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +extern bool mips_split_p[];
 +extern enum processor mips_arch;        /* which cpu to codegen for */
 +extern enum processor mips_tune;        /* which cpu to schedule for */
-+extern int mips_isa;                  /* architectural level */
 +extern int mips_abi;                  /* which ABI to use */
-+extern const struct mips_cpu_info *mips_arch_info;
-+extern const struct mips_cpu_info *mips_tune_info;
 +extern GTY(()) struct target_globals *mips16_globals;
 +#endif
 +
@@ -10203,9 +9596,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define SWITCHABLE_TARGET 1
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv.md gcc-4.6.1/gcc/config/riscv/riscv.md
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv.md        1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv.md        2011-11-03 03:26:39.000000000 -0700
-@@ -0,0 +1,2966 @@
-+;; vim: set ts=8:
++++ gcc-4.6.1/gcc/config/riscv/riscv.md        2011-11-09 01:24:21.000000000 -0800
+@@ -0,0 +1,2874 @@
 +;;  Mips.md        Machine Description for MIPS based processors
 +;;  Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
 +;;  1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
@@ -10232,7 +9624,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +;; <http://www.gnu.org/licenses/>.
 +
 +(define_enum "processor" [
-+  rocket
++  rocket32
++  rocket64
 +])
 +
 +(define_c_enum "unspec" [
@@ -10277,14 +9670,10 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  UNSPEC_BLOCKAGE
 +  UNSPEC_CLEAR_HAZARD
 +  UNSPEC_RDHWR
-+  UNSPEC_SYNCI
 +  UNSPEC_SYNC
 +
-+  ;; Cache manipulation.
-+  UNSPEC_MIPS_CACHE
-+  UNSPEC_R10K_CACHE_BARRIER
-+
 +  ;; Interrupt handling.
++  UNSPEC_MIPS_CACHE
 +  UNSPEC_ERET
 +  UNSPEC_DERET
 +  UNSPEC_DI
@@ -10611,8 +10000,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +;; This mode iterator allows :ANYF to be used wherever a scalar or vector
 +;; floating-point mode is allowed.
 +(define_mode_iterator ANYF [(SF "TARGET_HARD_FLOAT")
-+                          (DF "TARGET_HARD_FLOAT")
-+                          (V2SF "TARGET_HARD_FLOAT && TARGET_PAIRED_SINGLE_FLOAT")])
++                          (DF "TARGET_HARD_FLOAT")])
 +
 +;; Like ANYF, but only applies to scalar modes.
 +(define_mode_iterator SCALARF [(SF "TARGET_HARD_FLOAT")
@@ -10622,7 +10010,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +(define_mode_iterator SPLITF
 +  [(DF "!TARGET_64BIT")
 +   (DI "!TARGET_64BIT")
-+   (V2SF "!TARGET_64BIT && TARGET_PAIRED_SINGLE_FLOAT")
 +   (TF "TARGET_64BIT")])
 +
 +;; This attribute gives the length suffix for a sign- or zero-extension
@@ -12204,26 +11591,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +;; 64-bit paired-single floating point moves
 +
-+(define_expand "movv2sf"
-+  [(set (match_operand:V2SF 0)
-+      (match_operand:V2SF 1))]
-+  "TARGET_HARD_FLOAT && TARGET_PAIRED_SINGLE_FLOAT"
-+{
-+  if (mips_legitimize_move (V2SFmode, operands[0], operands[1]))
-+    DONE;
-+})
-+
-+(define_insn "*movv2sf"
-+  [(set (match_operand:V2SF 0 "nonimmediate_operand" "=f,f,f,m,m,*f,*d,*d,*d,*m")
-+      (match_operand:V2SF 1 "move_operand" "f,YG,m,f,YG,*d,*f,*d*YG,*m,*d"))]
-+  "TARGET_HARD_FLOAT
-+   && TARGET_PAIRED_SINGLE_FLOAT
-+   && (register_operand (operands[0], V2SFmode)
-+       || reg_or_0_operand (operands[1], V2SFmode))"
-+  { return mips_output_move (operands[0], operands[1]); }
-+  [(set_attr "move_type" "fmove,mtc,fpload,fpstore,store,mtc,mfc,move,load,store")
-+   (set_attr "mode" "DF")])
-+
 +;; Load the low word of operand 0 with operand 1.
 +(define_insn "load_low<mode>"
 +  [(set (match_operand:SPLITF 0 "register_operand" "=f,f")
@@ -12920,10 +12287,9 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +;; constraints.
 +
 +;; When we use an indirect jump, we need a register that will be
-+;; preserved by the epilogue.  Since TARGET_USE_PIC_FN_ADDR_REG forces
-+;; us to use $25 for this purpose -- and $25 is never clobbered by the
-+;; epilogue -- we might as well use it for !TARGET_USE_PIC_FN_ADDR_REG
-+;; as well.
++;; preserved by the epilogue.  Since TARGET_ABICALLS forces us to use
++;; t7 for this purpose, which the epilogue never clobbers, we may
++;; as well use it in general.
 +
 +(define_expand "sibcall"
 +  [(parallel [(call (match_operand 0 "")
@@ -12987,72 +12353,25 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +  DONE;
 +})
 +
-+;; This instruction directly corresponds to an assembly-language "jal".
-+;; There are four cases:
-+;;
-+;;    - -mno-abicalls:
-+;;      Both symbolic and register destinations are OK.  The pattern
-+;;      always expands to a single mips instruction.
-+;;
-+;;    - -mabicalls/-mno-explicit-relocs:
-+;;      Again, both symbolic and register destinations are OK.
-+;;      The call is treated as a multi-instruction black box.
-+;;
-+;;    - -mabicalls/-mexplicit-relocs with n32 or n64:
-+;;      Only "jal $25" is allowed.  This expands to a single "jalr $25"
-+;;      instruction.
-+;;
-+;;    - -mabicalls/-mexplicit-relocs with o32 or o64:
-+;;      Only "jal $25" is allowed.  The call is actually two instructions:
-+;;      "jalr $25" followed by an insn to reload $gp.
-+;;
-+;; In the last case, we can generate the individual instructions with
-+;; a define_split.  There are several things to be wary of:
-+;;
-+;;   - We can't expose the load of $gp before reload.  If we did,
-+;;     it might get removed as dead, but reload can introduce new
-+;;     uses of $gp by rematerializing constants.
-+;;
-+;;   - We shouldn't restore $gp after calls that never return.
-+;;     It isn't valid to insert instructions between a noreturn
-+;;     call and the following barrier.
-+;;
-+;;   - The splitter deliberately changes the liveness of $gp.  The unsplit
-+;;     instruction preserves $gp and so have no effect on its liveness.
-+;;     But once we generate the separate insns, it becomes obvious that
-+;;     $gp is not live on entry to the call.
-+;;
-+(define_insn_and_split "call_internal"
++(define_insn "call_internal"
 +  [(call (mem:SI (match_operand 0 "call_insn_operand" "c,S"))
 +       (match_operand 1 "" ""))
 +   (clobber (reg:SI RETURN_ADDR_REGNUM))]
 +  ""
 +  { return REG_P (operands[0]) ? "jalr\t%0" : "jal\t%0"; }
-+  "0"
-+  [(const_int 0)]
-+{
-+  gcc_unreachable();
-+  DONE;
-+}
 +  [(set_attr "jal" "indirect,direct")])
 +
 +;; A pattern for calls that must be made directly.  It is used for
 +;; MIPS16 calls that the linker may need to redirect to a hard-float
 +;; stub; the linker relies on the call relocation type to detect when
 +;; such redirection is needed.
-+(define_insn_and_split "call_internal_direct"
++(define_insn "call_internal_direct"
 +  [(call (mem:SI (match_operand 0 "const_call_insn_operand"))
 +       (match_operand 1))
 +   (const_int 1)
 +   (clobber (reg:SI RETURN_ADDR_REGNUM))]
 +  ""
 +  "jal\t%0"
-+  "0"
-+  [(const_int 0)]
-+{
-+  gcc_unreachable();
-+  DONE;
-+}
 +  [(set_attr "type" "call")])
 +
 +(define_expand "call_value"
@@ -13068,23 +12387,17 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +})
 +
 +;; See comment for call_internal.
-+(define_insn_and_split "call_value_internal"
++(define_insn "call_value_internal"
 +  [(set (match_operand 0 "register_operand" "")
 +        (call (mem:SI (match_operand 1 "call_insn_operand" "c,S"))
 +              (match_operand 2 "" "")))
 +   (clobber (reg:SI RETURN_ADDR_REGNUM))]
 +  ""
 +  { return REG_P (operands[1]) ? "jalr\t%1" : "jal\t%1"; }
-+  "0"
-+  [(const_int 0)]
-+{
-+  gcc_unreachable();
-+  DONE;
-+}
 +  [(set_attr "jal" "indirect,direct")])
 +
 +;; See call_internal_direct.
-+(define_insn_and_split "call_value_internal_direct"
++(define_insn "call_value_internal_direct"
 +  [(set (match_operand 0 "register_operand")
 +        (call (mem:SI (match_operand 1 "const_call_insn_operand"))
 +              (match_operand 2)))
@@ -13092,16 +12405,10 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +   (clobber (reg:SI RETURN_ADDR_REGNUM))]
 +  ""
 +  "jal\t%1"
-+  "0"
-+  [(const_int 0)]
-+{
-+  gcc_unreachable();
-+  DONE;
-+}
 +  [(set_attr "type" "call")])
 +
 +;; See comment for call_internal.
-+(define_insn_and_split "call_value_multiple_internal"
++(define_insn "call_value_multiple_internal"
 +  [(set (match_operand 0 "register_operand" "")
 +        (call (mem:SI (match_operand 1 "call_insn_operand" "c,S"))
 +              (match_operand 2 "" "")))
@@ -13111,12 +12418,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +   (clobber (reg:SI RETURN_ADDR_REGNUM))]
 +  ""
 +  { return REG_P (operands[1]) ? "jalr\t%1" : "jal\t%1"; }
-+  "0"
-+  [(const_int 0)]
-+{
-+  gcc_unreachable();
-+  DONE;
-+}
 +  [(set_attr "jal" "indirect,direct")])
 +
 +;; Call subroutine returning any type.
@@ -13144,9 +12445,9 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +(define_insn "mips_cache"
 +  [(set (mem:BLK (scratch))
-+       (unspec:BLK [(match_operand:SI 0 "const_int_operand")
-+                    (match_operand:QI 1 "address_operand" "p")]
-+                   UNSPEC_MIPS_CACHE))]
++      (unspec:BLK [(match_operand:SI 0 "const_int_operand")
++                   (match_operand:QI 1 "address_operand" "p")]
++                  UNSPEC_MIPS_CACHE))]
 +  "0"
 +  "cache\t%X0,%a1")
 +
@@ -13222,7 +12523,7 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +ADJUST_ALIGNMENT (CCV4, 16);
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv-opc.h gcc-4.6.1/gcc/config/riscv/riscv-opc.h
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv-opc.h     1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv-opc.h     2011-10-22 19:22:24.000000000 -0700
++++ gcc-4.6.1/gcc/config/riscv/riscv-opc.h     2011-11-11 00:14:28.000000000 -0800
 @@ -0,0 +1,545 @@
 +/* Automatically generated by parse-opcodes */
 +#define MATCH_MOVN 0x6f7
@@ -13350,13 +12651,13 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define MATCH_VSSEGSTB 0x80f
 +#define  MASK_VSSEGSTB 0xfff
 +#define MATCH_MFTX_D 0x1c0d3
-+#define  MASK_MFTX_D 0x7c1ffff
++#define  MASK_MFTX_D 0x3fffff
 +#define MATCH_DIV 0x633
 +#define  MASK_DIV 0x1ffff
 +#define MATCH_C_LD 0x9
 +#define  MASK_C_LD 0x1f
 +#define MATCH_MFTX_S 0x1c053
-+#define  MASK_MFTX_S 0x7c1ffff
++#define  MASK_MFTX_S 0x3fffff
 +#define MATCH_VSSEGSTH 0x88f
 +#define  MASK_VSSEGSTH 0xfff
 +#define MATCH_VVCFGIVL 0xf3
@@ -13771,8 +13072,8 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +#define  MASK_SD 0x3ff
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv.opt gcc-4.6.1/gcc/config/riscv/riscv.opt
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv.opt       1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv.opt       2011-11-02 23:39:53.000000000 -0700
-@@ -0,0 +1,144 @@
++++ gcc-4.6.1/gcc/config/riscv/riscv.opt       2011-11-09 01:24:21.000000000 -0800
+@@ -0,0 +1,77 @@
 +; Options for the MIPS port of the compiler
 +;
 +; Copyright (C) 2005, 2007, 2008, 2010, 2011 Free Software Foundation, Inc.
@@ -13823,18 +13124,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +Target Report RejectNegative InverseMask(BIG_ENDIAN, LITTLE_ENDIAN)
 +Use little-endian byte order
 +
-+mgp32
-+Target Report RejectNegative InverseMask(64BIT)
-+Use 32-bit general registers
-+
-+mgp64
-+Target Report RejectNegative Mask(64BIT)
-+Use 64-bit general registers
-+
-+mplt
-+Target Report Var(TARGET_PLT) Init(1)
-+When generating -mabicalls code, allow executables to use PLTs and copy relocations
-+
 +mhard-float
 +Target Report RejectNegative InverseMask(SOFT_FLOAT_ABI, HARD_FLOAT_ABI)
 +Allow the use of hardware floating-point ABI and instructions
@@ -13851,76 +13140,21 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +Target Report Mask(MEMCPY)
 +Don't optimize block moves
 +
-+mmips-tfile
-+Target
-+Use the mips-tfile postpass
-+
-+mno-float
-+Target Report RejectNegative Var(TARGET_NO_FLOAT) Condition(TARGET_SUPPORTS_NO_FLOAT)
-+Prevent the use of all floating-point operations
-+
-+mno-flush-func
-+Target RejectNegative
-+Do not use a cache-flushing function before calling stack trampolines
-+
-+mno-mdmx
-+Target Report RejectNegative Var(TARGET_MDMX, 0)
-+Do not use MDMX instructions
-+
-+mpaired-single
-+Target Report Mask(PAIRED_SINGLE_FLOAT)
-+Use paired-single floating-point instructions
-+
-+mr10k-cache-barrier=
-+Target Joined RejectNegative
-+-mr10k-cache-barrier=SETTING  Specify when r10k cache barriers should be inserted
-+
-+mrelax-pic-calls
-+Target Report Mask(RELAX_PIC_CALLS)
-+Try to allow the linker to turn PIC calls into direct calls
-+
-+mshared
-+Target Report Var(TARGET_SHARED) Init(1)
-+When generating -mabicalls code, make the code suitable for use in shared libraries
-+
-+msmartmips
-+Target Report Mask(SMARTMIPS)
-+Use SmartMIPS instructions
-+
 +msoft-float
 +Target Report RejectNegative Mask(SOFT_FLOAT_ABI)
 +Prevent the use of all hardware floating-point instructions
 +
-+msplit-addresses
-+Target Report Mask(SPLIT_ADDRESSES)
-+Optimize lui/addiu address loads
-+
-+msym32
-+Target Report Var(TARGET_SYM32) Init(1)
-+Assume all symbols have 32-bit values
-+
-+msynci
-+Target Report Mask(SYNCI)
-+Use synci instruction to invalidate i-cache
-+
 +mtune=
 +Target RejectNegative Joined Var(mips_tune_string)
 +-mtune=PROCESSOR      Optimize the output for PROCESSOR
 +
-+mvr4130-align
-+Target Report Mask(VR4130_ALIGN)
-+Perform VR4130-specific alignment optimizations
-+
 +mxgot
 +Target Report Var(TARGET_XGOT) Init(1)
 +Lift restrictions on GOT size
-+
-+noasmopt
-+Driver
 diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/riscv/riscv-protos.h gcc-4.6.1/gcc/config/riscv/riscv-protos.h
 --- ../gcc-4.6.1-orig/gcc/config/riscv/riscv-protos.h  1969-12-31 16:00:00.000000000 -0800
-+++ gcc-4.6.1/gcc/config/riscv/riscv-protos.h  2011-11-03 02:55:14.000000000 -0700
-@@ -0,0 +1,205 @@
++++ gcc-4.6.1/gcc/config/riscv/riscv-protos.h  2011-11-09 02:01:56.000000000 -0800
+@@ -0,0 +1,203 @@
 +/* Prototypes of target machine for GNU compiler.  MIPS version.
 +   Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
 +   1999, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
@@ -14041,7 +13275,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +
 +extern bool mips_symbolic_constant_p (rtx, enum mips_symbol_type *);
 +extern int mips_regno_mode_ok_for_base_p (int, enum machine_mode, bool);
-+extern bool mips_stack_address_p (rtx, enum machine_mode);
 +extern int mips_address_insns (rtx, enum machine_mode, bool);
 +extern int mips_const_insns (rtx);
 +extern int mips_split_const_insns (rtx);
@@ -14063,7 +13296,6 @@ diff -x mpfr -x mpc -x gmp -x autom4te.cache -ruN ../gcc-4.6.1-orig/gcc/config/r
 +extern void mips_expand_vcondv2sf (rtx, rtx, rtx, enum rtx_code, rtx, rtx);
 +extern void mips_expand_conditional_move (rtx *);
 +#endif
-+extern bool mips_use_pic_fn_addr_reg_p (const_rtx);
 +extern rtx mips_expand_call (enum mips_call_type, rtx, rtx, rtx, rtx, bool);
 +extern void mips_expand_fcc_reload (rtx, rtx, rtx);
 +extern void mips_set_return_address (rtx, rtx);
index 332dd41..dd76d73 100644 (file)
@@ -1,6 +1,6 @@
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/scripts/config.sub glibc-2.14.1/scripts/config.sub
 --- ../glibc-2.14.1-orig/scripts/config.sub    2011-10-25 02:50:25.000000000 -0700
-+++ glibc-2.14.1/scripts/config.sub    2011-10-25 02:46:03.000000000 -0700
++++ glibc-2.14.1/scripts/config.sub    2011-11-08 20:05:41.000000000 -0800
 @@ -290,6 +290,7 @@
        | pdp10 | pdp11 | pj | pjl \
        | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
@@ -11,13 +11,13 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/scripts/config.
        | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/abort-instr.h glibc-2.14.1/sysdeps/riscv/abort-instr.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/abort-instr.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/abort-instr.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/abort-instr.h   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,2 @@
 +/* An instruction which should crash any program is a breakpoint.  */
 +#define ABORT_INSTRUCTION asm ("unimp")
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/atomic.h glibc-2.14.1/sysdeps/riscv/bits/atomic.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/atomic.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/atomic.h   2011-11-01 23:44:42.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/atomic.h   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,177 @@
 +/* Low-level functions for atomic operations. Mips version.
 +   Copyright (C) 2005 Free Software Foundation, Inc.
@@ -198,7 +198,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif /* bits/atomic.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/dlfcn.h glibc-2.14.1/sysdeps/riscv/bits/dlfcn.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/dlfcn.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/dlfcn.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/dlfcn.h    2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,66 @@
 +/* System dependent definitions for run-time dynamic loading.
 +   Copyright (C) 1996, 1997, 1999, 2000, 2001, 2004
@@ -268,7 +268,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/endian.h glibc-2.14.1/sysdeps/riscv/bits/endian.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/endian.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/endian.h   2011-10-27 21:55:31.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/endian.h   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,13 @@
 +/* The MIPS architecture has selectable endianness.
 +   This file is for a machine using big-endian mode.  */
@@ -285,7 +285,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/fenv.h glibc-2.14.1/sysdeps/riscv/bits/fenv.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/fenv.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/fenv.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/fenv.h     2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,77 @@
 +/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -366,7 +366,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/ipctypes.h glibc-2.14.1/sysdeps/riscv/bits/ipctypes.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/ipctypes.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/ipctypes.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/ipctypes.h 2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,32 @@
 +/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM.  MIPS version
 +   Copyright (C) 2002 Free Software Foundation, Inc.
@@ -402,7 +402,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif /* bits/ipctypes.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/link.h glibc-2.14.1/sysdeps/riscv/bits/link.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/link.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/link.h     2011-11-03 19:06:26.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/link.h     2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,76 @@
 +/* Copyright (C) 2005, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -482,7 +482,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +__END_DECLS
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/linkmap.h glibc-2.14.1/sysdeps/riscv/bits/linkmap.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/linkmap.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/linkmap.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/linkmap.h  2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,4 @@
 +struct link_map_machine
 +  {
@@ -490,7 +490,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +  };
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/mathdef.h glibc-2.14.1/sysdeps/riscv/bits/mathdef.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/mathdef.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/mathdef.h  2011-11-03 18:57:51.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/mathdef.h  2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,45 @@
 +/* Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2007
 +      Free Software Foundation, Inc.
@@ -539,7 +539,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/nan.h glibc-2.14.1/sysdeps/riscv/bits/nan.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/nan.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/nan.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/nan.h      2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,56 @@
 +/* `NAN' constant for IEEE 754 machines.
 +   Copyright (C) 1992, 1996, 1997, 1999, 2002, 2004
@@ -599,7 +599,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif        /* GCC.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/setjmp.h glibc-2.14.1/sysdeps/riscv/bits/setjmp.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/setjmp.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/setjmp.h   2011-11-02 01:20:35.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/setjmp.h   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,47 @@
 +/* Define the machine-dependent type `jmp_buf'.  RISC-V version.
 +   Copyright (C) 1992,1993,1995,1997,2000,2002,2003,2004,2005,2006
@@ -650,7 +650,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif /* _RISCV_BITS_SETJMP_H */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bits/wordsize.h glibc-2.14.1/sysdeps/riscv/bits/wordsize.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bits/wordsize.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bits/wordsize.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bits/wordsize.h 2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,22 @@
 +/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -676,17 +676,17 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/b
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bsd-_setjmp.c glibc-2.14.1/sysdeps/riscv/bsd-_setjmp.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bsd-_setjmp.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bsd-_setjmp.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bsd-_setjmp.c   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1 @@
 +/* _setjmp is implemented in setjmp.S */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/bsd-setjmp.c glibc-2.14.1/sysdeps/riscv/bsd-setjmp.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/bsd-setjmp.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/bsd-setjmp.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/bsd-setjmp.c    2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1 @@
 +/* setjmp is implemented in setjmp.S */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/dl-dtprocnum.h glibc-2.14.1/sysdeps/riscv/dl-dtprocnum.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/dl-dtprocnum.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/dl-dtprocnum.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/dl-dtprocnum.h  2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,22 @@
 +/* Configuration of lookup functions.  MIPS version.
 +   Copyright (C) 2000 Free Software Foundation, Inc.
@@ -712,7 +712,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +#define DT_THISPROCNUM        DT_MIPS_NUM
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/dl-lookup.c glibc-2.14.1/sysdeps/riscv/dl-lookup.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/dl-lookup.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/dl-lookup.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/dl-lookup.c     2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,1033 @@
 +/* Look up a symbol in the loaded objects.
 +   MIPS/Linux version - special handling of non-PIC undefined symbol rules.
@@ -1749,8 +1749,8 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/dl-machine.h glibc-2.14.1/sysdeps/riscv/dl-machine.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/dl-machine.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/dl-machine.h    2011-11-03 19:07:06.000000000 -0700
-@@ -0,0 +1,740 @@
++++ glibc-2.14.1/sysdeps/riscv/dl-machine.h    2011-11-08 20:44:26.000000000 -0800
+@@ -0,0 +1,735 @@
 +/* Machine-dependent ELF dynamic relocation inline functions.  MIPS version.
 +   Copyright (C) 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007
 +   Free Software Foundation, Inc.
@@ -1787,10 +1787,6 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +#include <sys/asm.h>
 +#include <dl-tls.h>
 +
-+/* The offset of gp from GOT might be system-dependent.  It's set by
-+   ld.  The same value is also */
-+#define OFFSET_GP_GOT 0x7f0
-+
 +#ifndef _RTLD_PROLOGUE
 +# define _RTLD_PROLOGUE(entry)                                                \
 +      ".globl\t" __STRING(entry) "\n\t"                               \
@@ -1837,7 +1833,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +static inline ElfW(Addr) *
 +elf_mips_got_from_gpreg (ElfW(Addr) gpreg)
 +{
-+  return (ElfW(Addr) *) (gpreg - OFFSET_GP_GOT);
++  return (ElfW(Addr) *) gpreg;
 +}
 +
 +/* Return the link-time address of _DYNAMIC.  Conveniently, this is the
@@ -1953,8 +1949,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +      # the address of the dynamic structure. Though MIPS ABI\n\
 +      # doesn't say nothing about this, I emulate this here.\n\
 +      " STRINGXV(PIC_LA(a0, gp, _DYNAMIC)) "\n\
-+      # Subtract OFFSET_GP_GOT\n\
-+      " STRINGXP(REG_S) " a0, -" STRINGXP(OFFSET_GP_GOT) "(gp)\n\
++      " STRINGXP(REG_S) " a0, 0(gp)\n\
 +      move a0, sp\n\
 +      rdnpc t0\n\
 +.Lcoff: \n\
@@ -2493,7 +2488,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +#endif /* RESOLVE_MAP */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/dl-tls.h glibc-2.14.1/sysdeps/riscv/dl-tls.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/dl-tls.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/dl-tls.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/dl-tls.h        2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,49 @@
 +/* Thread-local storage handling in the ELF dynamic linker.  MIPS version.
 +   Copyright (C) 2005 Free Software Foundation, Inc.
@@ -2546,7 +2541,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +#define TLS_DTV_UNALLOCATED   ((void *) -1l)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/dl-trampoline.c glibc-2.14.1/sysdeps/riscv/dl-trampoline.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/dl-trampoline.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/dl-trampoline.c 2011-11-07 21:41:52.000000000 -0800
++++ glibc-2.14.1/sysdeps/riscv/dl-trampoline.c 2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,295 @@
 +/* PLT trampoline.  MIPS version.
 +   Copyright (C) 1996-2001, 2002, 2003, 2004, 2005
@@ -2845,7 +2840,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/d
 +
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/elf/configure glibc-2.14.1/sysdeps/riscv/elf/configure
 --- ../glibc-2.14.1-orig/sysdeps/riscv/elf/configure   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/elf/configure   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/elf/configure   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,46 @@
 +# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
 + # Local configure fragment for sysdeps/mips/elf.
@@ -2895,7 +2890,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/e
 +
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/elf/configure.in glibc-2.14.1/sysdeps/riscv/elf/configure.in
 --- ../glibc-2.14.1-orig/sysdeps/riscv/elf/configure.in        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/elf/configure.in        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/elf/configure.in        2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,35 @@
 +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
 +# Local configure fragment for sysdeps/mips/elf.
@@ -2934,7 +2929,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/e
 +dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/elf/start.S glibc-2.14.1/sysdeps/riscv/elf/start.S
 --- ../glibc-2.14.1-orig/sysdeps/riscv/elf/start.S     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/elf/start.S     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/elf/start.S     2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,105 @@
 +/* Startup code compliant to the ELF Mips ABI.
 +   Copyright (C) 1995, 1997, 2000, 2001, 2002, 2003, 2004
@@ -3043,7 +3038,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/e
 +      data_start = __data_start
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/bits/mathinline.h glibc-2.14.1/sysdeps/riscv/fpu/bits/mathinline.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/bits/mathinline.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/bits/mathinline.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/bits/mathinline.h   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,52 @@
 +/* Inline math functions for RISC-V.
 +   Copyright (C) 2011
@@ -3099,7 +3094,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +#endif /* __GNUC__ */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/e_sqrt.c glibc-2.14.1/sysdeps/riscv/fpu/e_sqrt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/e_sqrt.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/e_sqrt.c    2011-10-27 22:20:54.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/e_sqrt.c    2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,26 @@
 +/* Copyright (C) 2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -3129,7 +3124,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/e_sqrtf.c glibc-2.14.1/sysdeps/riscv/fpu/e_sqrtf.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/e_sqrtf.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/e_sqrtf.c   2011-10-27 22:21:11.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/e_sqrtf.c   2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,26 @@
 +/* Copyright (C) 2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -3159,7 +3154,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fclrexcpt.c glibc-2.14.1/sysdeps/riscv/fpu/fclrexcpt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fclrexcpt.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fclrexcpt.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fclrexcpt.c 2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,47 @@
 +/* Clear given exceptions in current floating-point environment.
 +   Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
@@ -3210,7 +3205,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fedisblxcpt.c glibc-2.14.1/sysdeps/riscv/fpu/fedisblxcpt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fedisblxcpt.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fedisblxcpt.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fedisblxcpt.c       2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,42 @@
 +/* Disable floating-point exceptions.
 +   Copyright (C) 2000 Free Software Foundation, Inc.
@@ -3256,7 +3251,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feenablxcpt.c glibc-2.14.1/sysdeps/riscv/fpu/feenablxcpt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feenablxcpt.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/feenablxcpt.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/feenablxcpt.c       2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,42 @@
 +/* Enable floating-point exceptions.
 +   Copyright (C) 2000 Free Software Foundation, Inc.
@@ -3302,7 +3297,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetenv.c glibc-2.14.1/sysdeps/riscv/fpu/fegetenv.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetenv.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fegetenv.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fegetenv.c  2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,32 @@
 +/* Store current floating-point environment.
 +   Copyright (C) 1998, 1999, 2000, 2002, 2010 Free Software Foundation, Inc.
@@ -3338,7 +3333,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (fegetenv)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetexcept.c glibc-2.14.1/sysdeps/riscv/fpu/fegetexcept.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetexcept.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fegetexcept.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fegetexcept.c       2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,34 @@
 +/* Get enabled floating-point exceptions.
 +   Copyright (C) 2000 Free Software Foundation, Inc.
@@ -3376,7 +3371,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetround.c glibc-2.14.1/sysdeps/riscv/fpu/fegetround.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fegetround.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fegetround.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fegetround.c        2011-11-08 20:05:41.000000000 -0800
 @@ -0,0 +1,33 @@
 +/* Return current rounding direction.
 +   Copyright (C) 1998 Free Software Foundation, Inc.
@@ -3413,7 +3408,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feholdexcpt.c glibc-2.14.1/sysdeps/riscv/fpu/feholdexcpt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feholdexcpt.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/feholdexcpt.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/feholdexcpt.c       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,40 @@
 +/* Store current floating-point environment and clear exceptions.
 +   Copyright (C) 2000 Free Software Foundation, Inc.
@@ -3457,7 +3452,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (feholdexcept)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fenv_libc.h glibc-2.14.1/sysdeps/riscv/fpu/fenv_libc.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fenv_libc.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fenv_libc.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fenv_libc.h 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,32 @@
 +/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -3493,7 +3488,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +#endif /* _FENV_LIBC_H */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fesetenv.c glibc-2.14.1/sysdeps/riscv/fpu/fesetenv.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fesetenv.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fesetenv.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fesetenv.c  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,43 @@
 +/* Install given floating-point environment.
 +   Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
@@ -3540,7 +3535,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (fesetenv)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fesetround.c glibc-2.14.1/sysdeps/riscv/fpu/fesetround.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fesetround.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fesetround.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fesetround.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,45 @@
 +/* Set current rounding direction.
 +   Copyright (C) 1998 Free Software Foundation, Inc.
@@ -3589,7 +3584,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (fesetround)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feupdateenv.c glibc-2.14.1/sysdeps/riscv/fpu/feupdateenv.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/feupdateenv.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/feupdateenv.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/feupdateenv.c       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,44 @@
 +/* Install given floating-point environment and raise exceptions.
 +   Copyright (C) 1998, 1999, 2000, 2002, 2010 Free Software Foundation, Inc.
@@ -3637,7 +3632,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (feupdateenv)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fgetexcptflg.c glibc-2.14.1/sysdeps/riscv/fpu/fgetexcptflg.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fgetexcptflg.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fgetexcptflg.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fgetexcptflg.c      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,40 @@
 +/* Store current representation for exceptions.
 +   Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
@@ -3681,7 +3676,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fraiseexcpt.c glibc-2.14.1/sysdeps/riscv/fpu/fraiseexcpt.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fraiseexcpt.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fraiseexcpt.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fraiseexcpt.c       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,47 @@
 +/* Raise given exceptions.
 +   Copyright (C) 2000, 2002 Free Software Foundation, Inc.
@@ -3732,7 +3727,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (feraiseexcept)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fsetexcptflg.c glibc-2.14.1/sysdeps/riscv/fpu/fsetexcptflg.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/fsetexcptflg.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/fsetexcptflg.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/fsetexcptflg.c      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,43 @@
 +/* Set floating-point environment exception handling.
 +   Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
@@ -3779,7 +3774,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/ftestexcept.c glibc-2.14.1/sysdeps/riscv/fpu/ftestexcept.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/ftestexcept.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/ftestexcept.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/ftestexcept.c       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,34 @@
 +/* Test exception in current environment.
 +   Copyright (C) 1998, 2010 Free Software Foundation, Inc.
@@ -3817,7 +3812,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +libm_hidden_def (fetestexcept)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu/libm-test-ulps glibc-2.14.1/sysdeps/riscv/fpu/libm-test-ulps
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu/libm-test-ulps      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu/libm-test-ulps      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu/libm-test-ulps      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,890 @@
 +# Begin of automatic generation
 +
@@ -4711,7 +4706,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +# end of automatic generation
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/fpu_control.h glibc-2.14.1/sysdeps/riscv/fpu_control.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/fpu_control.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/fpu_control.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/fpu_control.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,112 @@
 +/* FPU control word bits.  Mips version.
 +   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2006, 2008
@@ -4827,7 +4822,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/f
 +#endif        /* fpu_control.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/gccframe.h glibc-2.14.1/sysdeps/riscv/gccframe.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/gccframe.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/gccframe.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/gccframe.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,22 @@
 +/* Definition of object in frame unwind info.  mips version.
 +   Copyright (C) 2001 Free Software Foundation, Inc.
@@ -4853,7 +4848,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/g
 +#include <sysdeps/generic/gccframe.h>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/ieee754.h glibc-2.14.1/sysdeps/riscv/ieee754.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/ieee754.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/ieee754.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/ieee754.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,325 @@
 +/* Copyright (C) 1992, 1995, 1996, 1999, 2002, 2003
 +      Free Software Foundation, Inc.
@@ -5182,7 +5177,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/i
 +#endif /* ieee754.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/Implies glibc-2.14.1/sysdeps/riscv/Implies
 --- ../glibc-2.14.1-orig/sysdeps/riscv/Implies 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/Implies 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/Implies 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,5 @@
 +ieee754/flt-32
 +ieee754/dbl-64
@@ -5191,7 +5186,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/I
 +riscv/rv64
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/init-first.c glibc-2.14.1/sysdeps/riscv/init-first.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/init-first.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/init-first.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/init-first.c    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,66 @@
 +/* Initialization code run first thing by the ELF startup code.  For mips/Unix.
 +   Copyright (C) 1996, 1997, 2010 Free Software Foundation, Inc.
@@ -5261,7 +5256,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/i
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/jmpbuf-unwind.h glibc-2.14.1/sysdeps/riscv/jmpbuf-unwind.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/jmpbuf-unwind.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/jmpbuf-unwind.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/jmpbuf-unwind.h 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,46 @@
 +/* Copyright (C) 2003, 2005, 2006 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -5311,7 +5306,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/j
 +#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/ldsodefs.h glibc-2.14.1/sysdeps/riscv/ldsodefs.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/ldsodefs.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/ldsodefs.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/ldsodefs.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,150 @@
 +/* Run-time dynamic linker data structures for loaded ELF shared objects.
 +   Copyright (C) 2000, 2002, 2003, 2006, 2007 Free Software Foundation, Inc.
@@ -5465,7 +5460,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/l
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/libc-tls.c glibc-2.14.1/sysdeps/riscv/libc-tls.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/libc-tls.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/libc-tls.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/libc-tls.c      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,37 @@
 +/* Thread-local storage handling in the ELF dynamic linker.  MIPS version.
 +   Copyright (C) 2005 Free Software Foundation, Inc.
@@ -5506,7 +5501,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/l
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/__longjmp.S glibc-2.14.1/sysdeps/riscv/__longjmp.S
 --- ../glibc-2.14.1-orig/sysdeps/riscv/__longjmp.S     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/__longjmp.S     2011-11-02 01:24:15.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/__longjmp.S     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,59 @@
 +/* Copyright (C) 1996, 1997, 2000, 2002, 2003, 2004
 +      Free Software Foundation, Inc.
@@ -5569,7 +5564,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/_
 +END(__longjmp)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/Makefile glibc-2.14.1/sysdeps/riscv/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/riscv/Makefile        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/Makefile        2011-10-27 22:23:23.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/Makefile        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,9 @@
 +ifeq ($(subdir),misc)
 +sysdep_headers += sys/asm.h sgidefs.h
@@ -5582,7 +5577,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/M
 +ASFLAGS-.os += $(pic-ccflag)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/memcpy.c glibc-2.14.1/sysdeps/riscv/memcpy.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/memcpy.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/memcpy.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/memcpy.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,50 @@
 +#include <string.h>
 +
@@ -5636,7 +5631,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/m
 +libc_hidden_builtin_def (memcpy)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/memset.c glibc-2.14.1/sysdeps/riscv/memset.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/memset.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/memset.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/memset.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,49 @@
 +typedef unsigned long size_t;
 +//#include <string.h>
@@ -5689,7 +5684,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/m
 +weak_alias (memset, __GI_memset)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/memusage.h glibc-2.14.1/sysdeps/riscv/memusage.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/memusage.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/memusage.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/memusage.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,21 @@
 +/* Copyright (C) 2000 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -5714,7 +5709,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/m
 +#include <sysdeps/generic/memusage.h>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/Makefile glibc-2.14.1/sysdeps/riscv/nptl/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/Makefile   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/Makefile   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/Makefile   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,25 @@
 +# Copyright (C) 2005 Free Software Foundation, Inc.
 +# This file is part of the GNU C Library.
@@ -5743,13 +5738,13 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/nptl-sysdep.c glibc-2.14.1/sysdeps/riscv/nptl/nptl-sysdep.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/nptl-sysdep.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/nptl-sysdep.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/nptl-sysdep.c      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,2 @@
 +/* Pull in __syscall_error.  */
 +#include <sysdep.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthreaddef.h glibc-2.14.1/sysdeps/riscv/nptl/pthreaddef.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthreaddef.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/pthreaddef.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/pthreaddef.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,39 @@
 +/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -5792,7 +5787,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +  INLINE_SYSCALL (exit, 1, (val))
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthread_spin_lock.c glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_lock.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthread_spin_lock.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_lock.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_lock.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,32 @@
 +/* Copyright (C) 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -5828,7 +5823,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthread_spin_trylock.c glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_trylock.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/pthread_spin_trylock.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_trylock.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/pthread_spin_trylock.c     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,33 @@
 +/* Copyright (C) 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -5865,7 +5860,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/tcb-offsets.sym glibc-2.14.1/sysdeps/riscv/nptl/tcb-offsets.sym
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/tcb-offsets.sym    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/tcb-offsets.sym    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/tcb-offsets.sym    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,11 @@
 +#include <sysdep.h>
 +#include <tls.h>
@@ -5880,7 +5875,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +TID_OFFSET                    thread_offsetof (tid)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/nptl/tls.h glibc-2.14.1/sysdeps/riscv/nptl/tls.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/nptl/tls.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/nptl/tls.h      2011-10-27 22:17:29.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/nptl/tls.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,165 @@
 +/* Definition for thread-local data handling.  NPTL/MIPS version.
 +   Copyright (C) 2005, 2007 Free Software Foundation, Inc.
@@ -6049,7 +6044,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/n
 +#endif        /* tls.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/preconfigure glibc-2.14.1/sysdeps/riscv/preconfigure
 --- ../glibc-2.14.1-orig/sysdeps/riscv/preconfigure    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/preconfigure    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/preconfigure    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,21 @@
 +ccccase "$CC $CFLAGS $CPPFLAGS " in
 +*" -mabi=32 "*) mips_cc_abi=32 ;;
@@ -6074,20 +6069,20 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/p
 +;;
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv32/Implies glibc-2.14.1/sysdeps/riscv/rv32/Implies
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv32/Implies    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv32/Implies    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv32/Implies    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,2 @@
 +riscv
 +wordsize-32
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv32/Makefile glibc-2.14.1/sysdeps/riscv/rv32/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv32/Makefile   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv32/Makefile   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv32/Makefile   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,3 @@
 +ifeq ($(filter -mabi=32,$(CC)),)
 +CC += -mabi=32
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/gmp-mparam.h glibc-2.14.1/sysdeps/riscv/rv64/gmp-mparam.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/gmp-mparam.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/gmp-mparam.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/gmp-mparam.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,31 @@
 +/* gmp-mparam.h -- Compiler/machine parameter header file.
 +
@@ -6122,7 +6117,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +#define BITS_PER_CHAR 8
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Implies glibc-2.14.1/sysdeps/riscv/rv64/Implies
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Implies    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/Implies    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/Implies    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,6 @@
 +ieee754/flt-32
 +ieee754/dbl-64
@@ -6132,7 +6127,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +wordsize-64
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/libm-test-ulps glibc-2.14.1/sysdeps/riscv/rv64/libm-test-ulps
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/libm-test-ulps     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/libm-test-ulps     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/libm-test-ulps     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,1245 @@
 +# Begin of automatic generation
 +
@@ -7381,14 +7376,14 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +# end of automatic generation
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Makefile glibc-2.14.1/sysdeps/riscv/rv64/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Makefile   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/Makefile   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/Makefile   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,3 @@
 +ifeq ($(filter -mabi=64,$(CC)),)
 +CC += -mabi=64
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/e_sqrtl.c glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/e_sqrtl.c
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/e_sqrtl.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/e_sqrtl.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/e_sqrtl.c  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,39 @@
 +/* long double square root in software floating-point emulation.
 +   Copyright (C) 1997, 1999, 2006 Free Software Foundation, Inc.
@@ -7431,14 +7426,14 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/Makefile glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/Makefile   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/Makefile   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/Makefile   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,3 @@
 +ifeq ($(subdir),math)
 +CPPFLAGS += -I../soft-fp
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/sfp-machine.h glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/sfp-machine.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/soft-fp/sfp-machine.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/sfp-machine.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/soft-fp/sfp-machine.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,74 @@
 +#include <fenv.h>
 +#include <fpu_control.h>
@@ -7516,7 +7511,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Versions glibc-2.14.1/sysdeps/riscv/rv64/Versions
 --- ../glibc-2.14.1-orig/sysdeps/riscv/rv64/Versions   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/rv64/Versions   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/rv64/Versions   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,7 @@
 +libm {
 +  GLIBC_2.1 {
@@ -7527,7 +7522,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/r
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/setjmp.S glibc-2.14.1/sysdeps/riscv/setjmp.S
 --- ../glibc-2.14.1-orig/sysdeps/riscv/setjmp.S        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/setjmp.S        2011-11-02 01:21:55.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/setjmp.S        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,75 @@
 +/* Copyright (C) 1996, 1997, 2000, 2002, 2003, 2004
 +      Free Software Foundation, Inc.
@@ -7606,7 +7601,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +weak_alias(_setjmp, __GI__setjmp)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/sgidefs.h glibc-2.14.1/sysdeps/riscv/sgidefs.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/sgidefs.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/sgidefs.h       2011-10-27 22:22:09.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/sgidefs.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,41 @@
 +/* Copyright (C) 1996, 1997, 1998, 2003, 2004 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -7651,7 +7646,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +#endif /* sgidefs.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/shlib-versions glibc-2.14.1/sysdeps/riscv/shlib-versions
 --- ../glibc-2.14.1-orig/sysdeps/riscv/shlib-versions  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/shlib-versions  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/shlib-versions  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,21 @@
 +mips.*-.*-linux.*     libm=6                  GLIBC_2.0 GLIBC_2.2
 +
@@ -7676,7 +7671,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +mips.*-.*-linux.*     librt=1                 GLIBC_2.0 GLIBC_2.2
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/soft-fp/sfp-machine.h glibc-2.14.1/sysdeps/riscv/soft-fp/sfp-machine.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/soft-fp/sfp-machine.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/soft-fp/sfp-machine.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/soft-fp/sfp-machine.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,47 @@
 +#define _FP_W_TYPE_SIZE               32
 +#define _FP_W_TYPE            unsigned long
@@ -7727,7 +7722,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +#define FP_EX_INEXACT           (1 << 0)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/stackinfo.h glibc-2.14.1/sysdeps/riscv/stackinfo.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/stackinfo.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/stackinfo.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/stackinfo.h     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,34 @@
 +/* Copyright (C) 2000, 2010 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -7765,7 +7760,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +#endif        /* stackinfo.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/sys/asm.h glibc-2.14.1/sysdeps/riscv/sys/asm.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/sys/asm.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/sys/asm.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/sys/asm.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,206 @@
 +/* Copyright (C) 1997, 1998, 2002, 2003, 2004, 2005
 +   Free Software Foundation, Inc.
@@ -7975,7 +7970,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +#endif /* sys/asm.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/sys/ucontext.h glibc-2.14.1/sysdeps/riscv/sys/ucontext.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/sys/ucontext.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/sys/ucontext.h  2011-11-03 19:08:52.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/sys/ucontext.h  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,144 @@
 +/* Copyright (C) 1998, 1999, 2002, 2003, 2004 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -8123,7 +8118,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/s
 +#endif /* sys/ucontext.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/tcb-offsets.sym glibc-2.14.1/sysdeps/riscv/tcb-offsets.sym
 --- ../glibc-2.14.1-orig/sysdeps/riscv/tcb-offsets.sym 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/tcb-offsets.sym 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/tcb-offsets.sym 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,11 @@
 +#include <sysdep.h>
 +#include <tls.h>
@@ -8138,7 +8133,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/t
 +TID_OFFSET                    thread_offsetof (tid)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/tls-macros.h glibc-2.14.1/sysdeps/riscv/tls-macros.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/tls-macros.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/tls-macros.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/tls-macros.h    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,51 @@
 +/* Macros to support TLS testing in times of missing compiler support.  */
 +
@@ -8193,7 +8188,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/t
 +     __result; })
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/tst-audit.h glibc-2.14.1/sysdeps/riscv/tst-audit.h
 --- ../glibc-2.14.1-orig/sysdeps/riscv/tst-audit.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/riscv/tst-audit.h     2011-11-03 19:05:17.000000000 -0700
++++ glibc-2.14.1/sysdeps/riscv/tst-audit.h     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,33 @@
 +/* Definitions for testing PLT entry/exit auditing.  ARM version.
 +
@@ -8230,7 +8225,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/riscv/t
 +#define int_retval lrv_v0
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/riscv/pipe.S glibc-2.14.1/sysdeps/unix/riscv/pipe.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/riscv/pipe.S     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/riscv/pipe.S     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/riscv/pipe.S     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,33 @@
 +/* Copyright (C) 1992, 1995, 1997, 2000, 2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -8267,12 +8262,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/ri
 +weak_alias (__pipe, pipe)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/riscv/rt-sysdep.c glibc-2.14.1/sysdeps/unix/riscv/rt-sysdep.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/riscv/rt-sysdep.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/riscv/rt-sysdep.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/riscv/rt-sysdep.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdep.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/riscv/sysdep.c glibc-2.14.1/sysdeps/unix/riscv/sysdep.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/riscv/sysdep.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/riscv/sysdep.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/riscv/sysdep.c   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,43 @@
 +/* Copyright (C) 1992, 1993, 1994, 1997, 1998, 1999, 2000, 2002, 2003 
 +   Free Software Foundation, Inc.
@@ -8319,7 +8314,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/ri
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/riscv/sysdep.h glibc-2.14.1/sysdeps/unix/riscv/sysdep.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/riscv/sysdep.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/riscv/sysdep.h   2011-10-27 22:23:40.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/riscv/sysdep.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,73 @@
 +/* Copyright (C) 1992, 1995, 1997, 1999, 2000, 2002, 2003, 2004
 +   Free Software Foundation, Inc.
@@ -8396,7 +8391,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/ri
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/endian.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/endian.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/endian.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/endian.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/endian.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,16 @@
 +/* The MIPS architecture has selectable endianness.
 +   Linux/MIPS exists in two both little and big endian flavours and we
@@ -8416,7 +8411,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/errno.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/errno.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/errno.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/errno.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/errno.h    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,63 @@
 +/* Error constants.  MIPS/Linux specific version.
 +   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2006
@@ -8483,7 +8478,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* !_ERRNO_H && __need_Emath */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/fcntl.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/fcntl.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/fcntl.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/fcntl.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/fcntl.h    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,296 @@
 +/* O_*, F_*, FD_* bit values for Linux.
 +   Copyright (C) 1995, 1996, 1997, 1998, 2000, 2002, 2003, 2004, 2006,
@@ -8783,7 +8778,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +__END_DECLS
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/ioctl-types.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ioctl-types.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/ioctl-types.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ioctl-types.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ioctl-types.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,76 @@
 +/* Structure types for pre-termios terminal ioctls.  Linux/MIPS version.
 +   Copyright (C) 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
@@ -8863,7 +8858,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#define       N_HCI           15      /* Bluetooth HCI UART  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/ipc.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ipc.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/ipc.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ipc.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/ipc.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,55 @@
 +/* Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -8922,7 +8917,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +};
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/mman.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/mman.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/mman.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/mman.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/mman.h     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,111 @@
 +/* Definitions for POSIX memory map interface.  Linux/MIPS version.
 +   Copyright (C) 1997, 2000, 2003, 2004, 2005, 2006, 2009, 2011
@@ -9037,7 +9032,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/msq.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/msq.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/msq.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/msq.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/msq.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,92 @@
 +/* Copyright (C) 2002, 2007 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -9133,7 +9128,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* __USE_MISC */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/poll.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/poll.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/poll.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/poll.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/poll.h     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,50 @@
 +/* Copyright (C) 1997, 2001, 2006, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -9187,7 +9182,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#define POLLNVAL      0x020           /* Invalid polling request.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/resource.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/resource.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/resource.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/resource.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/resource.h 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,270 @@
 +/* Bit values & structures for resource limits.  Linux/MIPS version.
 +   Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2004, 2005, 2006, 2008,
@@ -9461,7 +9456,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +__END_DECLS
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sem.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sem.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sem.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sem.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sem.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,85 @@
 +/* Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -9550,7 +9545,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* __USE_MISC */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/shm.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/shm.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/shm.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/shm.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/shm.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,95 @@
 +/* Copyright (C) 1995,1996,1997,2000,2001,2002,2003,2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -9649,7 +9644,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* __USE_MISC */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigaction.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigaction.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigaction.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigaction.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigaction.h        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,91 @@
 +/* The proper definitions for Linux/MIPS's sigaction.
 +   Copyright (C) 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2003, 2010
@@ -9744,7 +9739,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigcontext.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,84 @@
 +/* Copyright (C) 1996, 1997, 1998, 2003, 2004, 2006 Free Software
 +   Foundation, Inc.  This file is part of the GNU C Library.
@@ -9832,7 +9827,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/siginfo.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/siginfo.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/siginfo.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/siginfo.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/siginfo.h  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,319 @@
 +/* siginfo_t, sigevent and constants.  Linux/MIPS version.
 +   Copyright (C) 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
@@ -10155,7 +10150,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* have _SIGNAL_H.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/signum.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/signum.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/signum.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/signum.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/signum.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,79 @@
 +/* Signal number definitions.  Linux version.
 +   Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc.
@@ -10238,7 +10233,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* <signal.h> included.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigstack.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigstack.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/sigstack.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigstack.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/sigstack.h 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,55 @@
 +/* sigstack, sigaltstack definitions.
 +   Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
@@ -10297,7 +10292,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +  } stack_t;
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/statfs.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/statfs.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/statfs.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/statfs.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/statfs.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,74 @@
 +/* Copyright (C) 1997, 2000, 2010 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -10375,7 +10370,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#define _STATFS_F_NAMELEN
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/stat.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/stat.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/stat.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/stat.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/stat.h     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,265 @@
 +/* Copyright (C) 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004,
 +      2007, 2009, 2010 Free Software Foundation, Inc.
@@ -10644,7 +10639,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* bits/stat.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/termios.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/termios.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/bits/termios.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/termios.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/bits/termios.h  2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,221 @@
 +/* termios type and macro definitions.  Linux/MIPS version.
 +   Copyright (C) 1993, 94, 95, 96, 97, 99, 2010 Free Software Foundation, Inc.
@@ -10869,7 +10864,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +  _IOT (_IOTS (cflag_t), 4, _IOTS (cc_t), NCCS, _IOTS (speed_t), 2)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/brk.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/brk.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/brk.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/brk.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/brk.c   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,60 @@
 +/* brk system call for Linux/MIPS.
 +   Copyright (C) 2000, 2005, 2006 Free Software Foundation, Inc.
@@ -10933,7 +10928,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__brk, brk)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/clone.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/clone.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/clone.S 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/clone.S 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/clone.S 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,124 @@
 +/* Copyright (C) 1996, 1997, 2000, 2003, 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -11061,7 +11056,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__clone, clone)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/configure glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/configure       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure       2011-11-07 20:22:30.000000000 -0800
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,28 @@
 +# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
 + # Local configure fragment for sysdeps/unix/sysv/linux/riscv.
@@ -11093,7 +11088,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +fi
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/configure.in glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure.in
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/configure.in    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure.in    2011-11-07 20:22:37.000000000 -0800
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/configure.in    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,29 @@
 +sinclude(./aclocal.m4)dnl Autoconf lossage
 +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
@@ -11126,7 +11121,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +fi
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/dl-cache.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-cache.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/dl-cache.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-cache.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-cache.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,57 @@
 +/* Support for reading /etc/ld.so.cache files written by Linux ldconfig.
 +   Copyright (C) 2003, 2007 Free Software Foundation, Inc.
@@ -11187,7 +11182,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include_next <dl-cache.h>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/dl-static.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-static.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/dl-static.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-static.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/dl-static.c     2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,92 @@
 +/* Variable initialization.  MIPS version.
 +   Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
@@ -11283,12 +11278,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/fcntl.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/fcntl.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/fcntl.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/fcntl.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/fcntl.c 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/fcntl.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ftruncate64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ftruncate64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ftruncate64.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ftruncate64.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ftruncate64.c   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,76 @@
 +/* Copyright (C) 1997,1998,1999,2000,2001,2002,2003,2005,2006
 +      Free Software Foundation, Inc.
@@ -11368,7 +11363,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getcontext.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getcontext.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getcontext.S    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getcontext.S    2011-11-02 01:26:28.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getcontext.S    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,83 @@
 +/* Save current context.
 +   Copyright (C) 2009 Free Software Foundation, Inc.
@@ -11455,12 +11450,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__getcontext, getcontext)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getmsg.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getmsg.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getmsg.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getmsg.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getmsg.c        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/getmsg.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getsysstats.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getsysstats.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/getsysstats.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getsysstats.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/getsysstats.c   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,37 @@
 +/* Determine various system internal values, Linux/MIPS version.
 +   Copyright (C) 2001, 2009 Free Software Foundation, Inc.
@@ -11501,18 +11496,18 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <sysdeps/unix/sysv/linux/getsysstats.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Implies glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Implies
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Implies 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Implies 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Implies 2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,2 @@
 +# This needs to change to support rv32
 +unix/sysv/linux/riscv/rv64
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ipc_priv.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ipc_priv.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ipc_priv.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ipc_priv.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ipc_priv.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/powerpc/ipc_priv.h>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel-features.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel-features.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel-features.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel-features.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel-features.h       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,46 @@
 +/* Set flags signalling availability of kernel features based on given
 +   kernel version number.
@@ -11562,7 +11557,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_rt_sigframe.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_rt_sigframe.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_rt_sigframe.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_rt_sigframe.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_rt_sigframe.h    2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,10 @@
 +/* Linux kernel RT signal frame. */
 +typedef struct kernel_rt_sigframe
@@ -11576,7 +11571,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +kernel_rt_sigframe_t;
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_sigaction.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,40 @@
 +/* This is the sigaction structure from the Linux 2.1.24 kernel.  */
 +
@@ -11620,7 +11615,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +};
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_stat.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_stat.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_stat.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_stat.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_stat.h   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,57 @@
 +#include <sgidefs.h>
 +/* As tempting as it is to define XSTAT_IS_XSTAT64 for n64, the
@@ -11681,7 +11676,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_termios.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_termios.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/kernel_termios.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_termios.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/kernel_termios.h        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,35 @@
 +/* Copyright (C) 1997 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -11720,7 +11715,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* kernel_termios.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ldsodefs.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ldsodefs.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ldsodefs.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ldsodefs.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ldsodefs.h      2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,41 @@
 +/* Run-time dynamic linker data structures for loaded ELF shared objects. MIPS.
 +   Copyright (C) 2001, 2003 Free Software Foundation, Inc.
@@ -11765,7 +11760,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* ldsodefs.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/libc-abis glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/libc-abis
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/libc-abis       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/libc-abis       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/libc-abis       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,13 @@
 +# See the copy of this file in libc for detailed explanations.  This
 +# copy needs to include all libc definitions applicable to MIPS; only
@@ -11782,18 +11777,18 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +UNIQUE
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/lockf64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/lockf64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/lockf64.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/lockf64.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/lockf64.c       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/lockf64.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/____longjmp_chk.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/____longjmp_chk.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/____longjmp_chk.S       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/____longjmp_chk.S       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/____longjmp_chk.S       2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,2 @@
 +#define __longjmp ____longjmp_chk
 +#include <__longjmp.S>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/makecontext.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/makecontext.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/makecontext.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/makecontext.c   2011-10-27 22:23:54.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/makecontext.c   2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,34 @@
 +#include <sysdep.h>
 +#include <sys/asm.h>
@@ -11831,7 +11826,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__makecontext, makecontext)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Makefile glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Makefile        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Makefile        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Makefile        2011-11-08 20:05:42.000000000 -0800
 @@ -0,0 +1,139 @@
 +ifeq ($(subdir),signal)
 +#sysdep_routines += sigsuspend
@@ -11974,7 +11969,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/local_lim.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/local_lim.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/local_lim.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/local_lim.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/local_lim.h   2011-11-08 20:05:45.000000000 -0800
 @@ -0,0 +1,101 @@
 +/* Minimum guaranteed maximum values for system limits.  MIPS Linux version.
 +   Copyright (C) 1993-1998,2000,2002,2003,2004,2007,2008
@@ -12079,7 +12074,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#define SEM_VALUE_MAX   (2147483647)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/pthreadtypes.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/pthreadtypes.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/pthreadtypes.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/pthreadtypes.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/pthreadtypes.h        2011-11-08 20:05:45.000000000 -0800
 @@ -0,0 +1,229 @@
 +/* Machine-specific pthread type layouts.  MIPS version.
 +   Copyright (C) 2005, 2006 Free Software Foundation, Inc.
@@ -12312,7 +12307,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* bits/pthreadtypes.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/semaphore.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/semaphore.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/bits/semaphore.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/semaphore.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/bits/semaphore.h   2011-11-08 20:05:45.000000000 -0800
 @@ -0,0 +1,37 @@
 +/* Copyright (C) 2002, 2005, 2007 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -12353,13 +12348,13 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +} sem_t;
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/clone.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/clone.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/clone.S    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/clone.S    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/clone.S    2011-11-08 20:05:45.000000000 -0800
 @@ -0,0 +1,2 @@
 +#define RESET_PID
 +#include <sysdeps/unix/sysv/linux/riscv/clone.S>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/createthread.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/createthread.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/createthread.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/createthread.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/createthread.c     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,24 @@
 +/* Copyright (C) 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -12387,12 +12382,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <nptl/sysdeps/pthread/createthread.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/fork.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/fork.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/fork.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/fork.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/fork.c     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/fork.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/lowlevellock.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/lowlevellock.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/lowlevellock.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/lowlevellock.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/lowlevellock.h     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,293 @@
 +/* Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008,
 +   2009 Free Software Foundation, Inc.
@@ -12689,7 +12684,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* lowlevellock.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/pt-vfork.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/pt-vfork.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/pt-vfork.S 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/pt-vfork.S 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/pt-vfork.S 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,40 @@
 +/* Copyright (C) 2005, 2006 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -12733,7 +12728,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <sysdeps/unix/sysv/linux/riscv/vfork.S>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/sysdep-cancel.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/sysdep-cancel.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/sysdep-cancel.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/sysdep-cancel.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/sysdep-cancel.h    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,161 @@
 +/* Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -12898,7 +12893,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/vfork.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/vfork.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/nptl/vfork.S    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/vfork.S    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/nptl/vfork.S    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,45 @@
 +/* Copyright (C) 2005, 2006 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -12947,12 +12942,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <sysdeps/unix/sysv/linux/riscv/vfork.S>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pipe.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pipe.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pipe.S  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pipe.S  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pipe.S  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/riscv/pipe.S>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pread64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pread64.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread64.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread64.c       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,107 @@
 +/* Copyright (C) 1997, 1998, 2000, 2002, 2003, 2004
 +   Free Software Foundation, Inc.
@@ -13063,7 +13058,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pread.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pread.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pread.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,109 @@
 +/* Copyright (C) 1997, 1998, 2000, 2002, 2003, 2004
 +   Free Software Foundation, Inc.
@@ -13176,23 +13171,23 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/profil-counter.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/profil-counter.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/profil-counter.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/profil-counter.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/profil-counter.h        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,2 @@
 +/* We can use the ix86 version.  */
 +#include <sysdeps/unix/sysv/linux/i386/profil-counter.h>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pthread_once.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pthread_once.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pthread_once.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pthread_once.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pthread_once.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <nptl/sysdeps/unix/sysv/linux/sparc/pthread_once.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/putmsg.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/putmsg.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/putmsg.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/putmsg.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/putmsg.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/putmsg.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pwrite64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pwrite64.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite64.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite64.c      2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,108 @@
 +/* Copyright (C) 1997, 1998, 2000, 2002, 2003, 2004
 +   Free Software Foundation, Inc.
@@ -13304,7 +13299,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pwrite.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/pwrite.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/pwrite.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,109 @@
 +/* Copyright (C) 1997, 1998, 2000, 2002, 2003, 2004
 +   Free Software Foundation, Inc.
@@ -13417,7 +13412,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/readelflib.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/readelflib.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/readelflib.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/readelflib.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/readelflib.c    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,74 @@
 +/* Copyright (C) 1999, 2001, 2002, 2003, 2005, 2009
 +   Free Software Foundation, Inc.
@@ -13495,7 +13490,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include "elf/readelflib.c"
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/register-dump.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/register-dump.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/register-dump.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/register-dump.h 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/register-dump.h 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,105 @@
 +/* Dump registers.
 +   Copyright (C) 2000, 2001, 2002, 2006 Free Software Foundation, Inc.
@@ -13604,7 +13599,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#define REGISTER_DUMP register_dump (fd, ctx)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/accept4.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/accept4.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/accept4.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/accept4.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/accept4.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,32 @@
 +/* Copyright (C) 2008, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -13640,24 +13635,24 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <sysdeps/unix/sysv/linux/accept4.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/fxstatat.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/fxstatat.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/fxstatat.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/fxstatat.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/fxstatat.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/i386/fxstatat.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/internal_accept4.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_accept4.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/internal_accept4.S 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_accept4.S 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_accept4.S 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,2 @@
 +/* MIPS does not have socket.S and the socketcall syscall should
 +   generally be avoided, though it exists.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/internal_recvmmsg.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_recvmmsg.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/internal_recvmmsg.S        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_recvmmsg.S        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/internal_recvmmsg.S        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,2 @@
 +/* MIPS does not have socket.S and the socketcall syscall should
 +   generally be avoided, though it exists.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise64.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise64.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise64.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,61 @@
 +/* Copyright (C) 2007 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -13722,7 +13717,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/posix_fadvise.c    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,42 @@
 +/* Copyright (C) 2007 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -13768,12 +13763,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/arm/eabi/readahead.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/recvmmsg.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/recvmmsg.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/recvmmsg.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/recvmmsg.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/recvmmsg.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,31 @@
 +/* Copyright (C) 2010 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -13808,7 +13803,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include <sysdeps/unix/sysv/linux/recvmmsg.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/sync_file_range.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/sync_file_range.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/sync_file_range.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/sync_file_range.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/sync_file_range.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,47 @@
 +/* Selective file content synch'ing.
 +   Copyright (C) 2006, 2007 Free Software Foundation, Inc.
@@ -13859,7 +13854,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/syscalls.list glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/syscalls.list
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv32/syscalls.list      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/syscalls.list      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv32/syscalls.list      2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,5 @@
 +# File name   Caller  Syscall name    # args  Strong name     Weak names
 +
@@ -13868,7 +13863,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +fanotify_mark EXTRA   fanotify_mark   i:iiiiis        fanotify_mark
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/configure glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/configure  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,4 @@
 +# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
 + # Local configure fragment for sysdeps/unix/sysv/linux/mips/mips64.
@@ -13876,7 +13871,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +ldd_rewrite_script=$dest/ldd-rewrite.sed
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/configure.in glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure.in
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/configure.in       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure.in       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/configure.in       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,5 @@
 +sinclude(./aclocal.m4)dnl Autoconf lossage
 +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
@@ -13885,17 +13880,17 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +ldd_rewrite_script=$dest/ldd-rewrite.sed
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fallocate64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fallocate64.c      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate64.c      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate64.c      2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* fallocate64 is in fallocate.c */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fallocate.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fallocate.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fallocate.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/wordsize-64/fallocate.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fxstatat64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fxstatat64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/fxstatat64.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fxstatat64.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/fxstatat64.c       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,113 @@
 +/* Copyright (C) 2005,2006 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14012,12 +14007,12 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +libc_hidden_def (__fxstatat64)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/glob64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/glob64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/glob64.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/glob64.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/glob64.c   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* glob64 is in glob.c */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/ldconfig.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldconfig.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/ldconfig.h 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldconfig.h 2011-11-07 20:23:06.000000000 -0800
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldconfig.h 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,26 @@
 +/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14047,17 +14042,17 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +  { "libm.so.6", FLAG_ELF_LIBC6 },
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/ldd-rewrite.sed glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldd-rewrite.sed
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/ldd-rewrite.sed    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldd-rewrite.sed    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/ldd-rewrite.sed    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +s_^\(RTLDLIST=\)\(.*lib\)\(\|32\|64\)\(/[^/]*\.so\.[0-9.]*\)[         ]*$_\1"\232\4 \264\4 \2\4"_
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/llseek.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/llseek.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/llseek.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/llseek.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/llseek.c   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* lseek() is 64-bit capable already.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/Makefile glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/Makefile
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/Makefile   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/Makefile   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/Makefile   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,9 @@
 +ifeq ($(subdir),socket)
 +CFLAGS-recv.c += -fexceptions
@@ -14070,37 +14065,37 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise64.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise64.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise64.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* posix_fadvise64 is in posix_fadvise.c */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fadvise.c    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate64.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate64.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate64.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* posix_fallocate64 is in posix_fallocate.c */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate.c  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate.c  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/posix_fallocate.c  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +#include <sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c>
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/preadv64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/preadv64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/preadv64.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/preadv64.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/preadv64.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* Empty since the preadv syscall is equivalent.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/pwritev64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/pwritev64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/pwritev64.c        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/pwritev64.c        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/pwritev64.c        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1 @@
 +/* Empty since the pwritev syscall is equivalent.  */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/syscalls.list glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/syscalls.list
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/syscalls.list      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/syscalls.list      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/syscalls.list      2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,17 @@
 +# File name   Caller  Syscall name    Args    Strong name     Weak names
 +
@@ -14121,7 +14116,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +semget                -       semget          i:iii   __semget        semget
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/umount.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/umount.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/rv64/umount.c   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/umount.c   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/rv64/umount.c   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,31 @@
 +/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14156,7 +14151,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__umount, umount);
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/setcontext.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/setcontext.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/setcontext.S    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/setcontext.S    2011-11-02 01:26:08.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/setcontext.S    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,131 @@
 +/* Set current context.
 +   Copyright (C) 2009 Free Software Foundation, Inc.
@@ -14291,7 +14286,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__setcontext, setcontext)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sigaction.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigaction.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sigaction.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigaction.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigaction.c     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,192 @@
 +/* Copyright (C) 1997,1998,1999,2000,2002,2003,2004,2006
 +      Free Software Foundation, Inc.
@@ -14487,7 +14482,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,43 @@
 +/* Copyright (C) 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14534,7 +14529,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/socket.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/socket.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/socket.S        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/socket.S        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/socket.S        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,91 @@
 +/* Copyright (C) 1997, 1998, 2002, 2003 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14629,7 +14624,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/__start_context.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/__start_context.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/__start_context.S       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/__start_context.S       2011-10-27 22:24:01.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/__start_context.S       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,39 @@
 +/* Modify saved context.
 +   Copyright (C) 2009 Free Software Foundation, Inc.
@@ -14672,7 +14667,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +PSEUDO_END (__start_context)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/swapcontext.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/swapcontext.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/swapcontext.S   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/swapcontext.S   2011-11-02 01:25:30.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/swapcontext.S   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,131 @@
 +/* Save and set current context.
 +   Copyright (C) 2009 Free Software Foundation, Inc.
@@ -14807,7 +14802,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__swapcontext, swapcontext)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/cachectl.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/cachectl.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/cachectl.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/cachectl.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/cachectl.h  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,42 @@
 +/* Copyright (C) 1995, 1996, 1997, 2000, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -14853,7 +14848,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/cachectl.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/epoll.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/epoll.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/epoll.h     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/epoll.h     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/epoll.h     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,144 @@
 +/* Copyright (C) 2002-2006, 2007, 2008 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15001,7 +14996,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/epoll.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/eventfd.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/eventfd.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/eventfd.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/eventfd.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/eventfd.h   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,54 @@
 +/* Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15059,7 +15054,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/eventfd.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/inotify.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/inotify.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/inotify.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/inotify.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/inotify.h   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,107 @@
 +/* Copyright (C) 2005, 2006, 2008, 2009, 2010 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15170,7 +15165,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/inotify.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/procfs.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/procfs.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/procfs.h    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/procfs.h    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/procfs.h    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,128 @@
 +/* Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004
 +      Free Software Foundation, Inc.
@@ -15302,7 +15297,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* sys/procfs.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/signalfd.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/signalfd.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/signalfd.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/signalfd.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/signalfd.h  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,66 @@
 +/* Copyright (C) 2007, 2008 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15372,7 +15367,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/signalfd.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/syscall.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/syscall.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/syscall.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/syscall.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/syscall.h   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,35 @@
 +/* Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15411,7 +15406,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/sysmips.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/sysmips.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/sysmips.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/sysmips.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/sysmips.h   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,43 @@
 +/* Copyright (C) 1995, 1997, 2000, 2001, 2009 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15458,7 +15453,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/sysmips.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/tas.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/tas.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/tas.h       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/tas.h       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/tas.h       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,51 @@
 +/* Copyright (C) 2000, 2002, 2003, 2004, 2007, 2009
 +   Free Software Foundation, Inc.
@@ -15513,7 +15508,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/tas.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/timerfd.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/timerfd.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/timerfd.h   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/timerfd.h   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/timerfd.h   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,60 @@
 +/* Copyright (C) 2008 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15577,7 +15572,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/timerfd.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/ucontext.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/ucontext.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/ucontext.h  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/ucontext.h  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/ucontext.h  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,69 @@
 +/* Copyright (C) 1997, 1998, 2000, 2003, 2004, 2006, 2009 Free Software
 +   Foundation, Inc.  This file is part of the GNU C Library.
@@ -15650,7 +15645,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* sys/ucontext.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/user.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/user.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sys/user.h      1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/user.h      2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sys/user.h      2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,219 @@
 +/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15873,7 +15868,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif        /* _SYS_USER_H */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/syscall.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscall.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/syscall.c       1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscall.c       2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscall.c       2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,36 @@
 +/* Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -15913,7 +15908,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/syscalls.list glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscalls.list
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/syscalls.list   1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscalls.list   2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/syscalls.list   2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,31 @@
 +# File name   Caller  Syscall name    Args    Strong name     Weak names
 +
@@ -15948,7 +15943,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +socketpair    -       socketpair      i:iiif  __socketpair    socketpair
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sysdep.h glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sysdep.h
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/sysdep.h        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sysdep.h        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/sysdep.h        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,259 @@
 +/* Copyright (C) 2000, 2002, 2003, 2004, 2005, 2006, 2009
 +   Free Software Foundation, Inc.
@@ -16211,7 +16206,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif /* linux/mips/sysdep.h */
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/_test_and_set.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/_test_and_set.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/_test_and_set.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/_test_and_set.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/_test_and_set.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,30 @@
 +/* Copyright (C) 2000 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -16245,7 +16240,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#include "sys/tas.h"
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/truncate64.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/truncate64.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/truncate64.c    1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/truncate64.c    2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/truncate64.c    2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,76 @@
 +/* Copyright (C) 1997,1998,1999,2000,2002,2003,2005,2006
 +      Free Software Foundation, Inc.
@@ -16325,7 +16320,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +#endif
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ucontext_i.sym glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ucontext_i.sym
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ucontext_i.sym  1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ucontext_i.sym  2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ucontext_i.sym  2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,43 @@
 +#include <inttypes.h>
 +#include <signal.h>
@@ -16372,7 +16367,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +UCONTEXT_SIZE                 sizeof (ucontext_t)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ustat.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ustat.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/ustat.c 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ustat.c 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/ustat.c 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,37 @@
 +/* Copyright (C) 1997, 1998, 2000, 2003 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -16413,7 +16408,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Versions glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Versions
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/Versions        1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Versions        2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/Versions        2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,40 @@
 +ld {
 +  GLIBC_PRIVATE {
@@ -16457,7 +16452,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +}
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/vfork.S glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/vfork.S
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/vfork.S 1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/vfork.S 2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/vfork.S 2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,65 @@
 +/* Copyright (C) 2005 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -16526,7 +16521,7 @@ diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sy
 +weak_alias (__vfork, vfork)
 diff -x manual -x po -x autom4te.cache -ruN ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/xstatconv.c glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/xstatconv.c
 --- ../glibc-2.14.1-orig/sysdeps/unix/sysv/linux/riscv/xstatconv.c     1969-12-31 16:00:00.000000000 -0800
-+++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/xstatconv.c     2011-10-25 02:48:44.000000000 -0700
++++ glibc-2.14.1/sysdeps/unix/sysv/linux/riscv/xstatconv.c     2011-11-08 20:05:46.000000000 -0800
 @@ -0,0 +1,202 @@
 +/* Convert between the kernel's `struct stat' format, and libc's.
 +   Copyright (C) 1991,1995,1996,1997,1998,2000,2003 Free Software Foundation, Inc.