mirror of
				https://github.com/cuberite/polarssl.git
				synced 2025-11-03 20:22:59 -05:00 
			
		
		
		
	Fix -O0 build for Aarch64 bignum multiplication.
This commit is contained in:
		
							parent
							
								
									05cff953c9
								
							
						
					
					
						commit
						cb260bb30d
					
				@ -204,20 +204,20 @@
 | 
			
		||||
    asm(
 | 
			
		||||
 | 
			
		||||
#define MULADDC_CORE                \
 | 
			
		||||
        "ldr x4, [%3], #8   \n\t"   \
 | 
			
		||||
        "ldr x5, [%4]       \n\t"   \
 | 
			
		||||
        "mul x6, x4, %6     \n\t"   \
 | 
			
		||||
        "umulh x7, x4, %6   \n\t"   \
 | 
			
		||||
        "ldr x4, [%2], #8   \n\t"   \
 | 
			
		||||
        "ldr x5, [%1]       \n\t"   \
 | 
			
		||||
        "mul x6, x4, %3     \n\t"   \
 | 
			
		||||
        "umulh x7, x4, %3   \n\t"   \
 | 
			
		||||
        "adds x5, x5, x6    \n\t"   \
 | 
			
		||||
        "adc x7, x7, xzr    \n\t"   \
 | 
			
		||||
        "adds x5, x5, %5    \n\t"   \
 | 
			
		||||
        "adds x5, x5, %0    \n\t"   \
 | 
			
		||||
        "adc %0, x7, xzr    \n\t"   \
 | 
			
		||||
        "str x5, [%1], #8   \n\t"
 | 
			
		||||
 | 
			
		||||
#define MULADDC_STOP                            \
 | 
			
		||||
         : "+r" (c),  "=r" (d), "=r" (s)        \
 | 
			
		||||
         : "r" (s), "r" (d), "r" (c), "r" (b)   \
 | 
			
		||||
         : "x4", "x5", "x6", "x7", "cc"         \
 | 
			
		||||
#define MULADDC_STOP                        \
 | 
			
		||||
         : "+r" (c),  "+r" (d), "+r" (s)    \
 | 
			
		||||
         : "r" (b)                          \
 | 
			
		||||
         : "x4", "x5", "x6", "x7", "cc"     \
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
#endif /* Aarch64 */
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user