22 lines
		
	
	
		
			653 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			653 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
Fix from https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65932
 | 
						|
 | 
						|
--- a/gcc/config/arm/arm.h
 | 
						|
+++ b/gcc/config/arm/arm.h
 | 
						|
@@ -628,16 +628,10 @@ extern int arm_arch_crc;
 | 
						|
    type, but kept valid in the wider mode.  The signedness of the
 | 
						|
    extension may differ from that of the type.  */
 | 
						|
 
 | 
						|
-/* It is far faster to zero extend chars than to sign extend them */
 | 
						|
-
 | 
						|
 #define PROMOTE_MODE(MODE, UNSIGNEDP, TYPE)	\
 | 
						|
   if (GET_MODE_CLASS (MODE) == MODE_INT		\
 | 
						|
       && GET_MODE_SIZE (MODE) < 4)      	\
 | 
						|
     {						\
 | 
						|
-      if (MODE == QImode)			\
 | 
						|
-	UNSIGNEDP = 1;				\
 | 
						|
-      else if (MODE == HImode)			\
 | 
						|
-	UNSIGNEDP = 1;				\
 | 
						|
       (MODE) = SImode;				\
 | 
						|
     }
 | 
						|
 
 |