--- gcc/local-alloc.c.orig	2010-01-08 11:32:10.000000000 -0800
+++ gcc/local-alloc.c	2013-01-11 01:18:55.000000000 -0800
@@ -899,7 +899,7 @@ update_equiv_regs (void)
 	  /* APPLE LOCAL begin 5695218 */
 	  if (reg_inheritance_matrix)
 	    {
-	      int dstregno;
+	      long dstregno;
 		if (REG_P (dest))
 		{
 		  dstregno = REGNO (dest);
@@ -2676,9 +2676,9 @@ static int
 reg_inheritance_1 (rtx *px, void *data)
 {
   rtx x = *px;
-  unsigned int srcregno, dstregno;
+  unsigned long srcregno, dstregno;
 
-  dstregno = (int)data;
+  dstregno = (long)data;
 #ifdef TARGET_386
   /*
     Ugly special case: When moving a DI/SI/mode constant into an FP
