--- gcc/local-alloc.c.orig	2011-07-06 23:23:50.000000000 -0700
+++ gcc/local-alloc.c	2011-07-06 23:25:17.000000000 -0700
@@ -901,7 +901,7 @@ update_equiv_regs (void)
 	  /* APPLE LOCAL begin 5695218 */
 	  if (reg_inheritance_matrix)
 	    {
-	      int dstregno;
+	      long dstregno;
 		if (REG_P (dest))
 		{
 		  dstregno = REGNO (dest);
@@ -2693,9 +2693,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
