mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-04 06:54:27 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			19 lines
		
	
	
		
			577 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			577 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- a/gcc/config/arm/arm.c
 | 
						|
+++ b/gcc/config/arm/arm.c
 | 
						|
@@ -15371,6 +15371,15 @@ arm_unwind_emit_set (FILE * asm_out_file
 | 
						|
 	  /* Move from sp to reg.  */
 | 
						|
 	  asm_fprintf (asm_out_file, "\t.movsp %r\n", REGNO (e0));
 | 
						|
 	}
 | 
						|
+     else if (GET_CODE (e1) == PLUS
 | 
						|
+	      && GET_CODE (XEXP (e1, 0)) == REG
 | 
						|
+	      && REGNO (XEXP (e1, 0)) == SP_REGNUM
 | 
						|
+	      && GET_CODE (XEXP (e1, 1)) == CONST_INT)
 | 
						|
+	{
 | 
						|
+	  /* Set reg to offset from sp.  */
 | 
						|
+	  asm_fprintf (asm_out_file, "\t.movsp %r, #%d\n",
 | 
						|
+		       REGNO (e0), (int)INTVAL(XEXP (e1, 1)));
 | 
						|
+	}
 | 
						|
       else
 | 
						|
 	abort ();
 | 
						|
       break;
 |