vm: fix fixnum* overflow case for 4-bit tags
							parent
							
								
									109aa88b06
								
							
						
					
					
						commit
						9ffb01a9bd
					
				| 
						 | 
					@ -43,7 +43,7 @@ DEF(void,primitive_fixnum_multiply,(void *vm)):
 | 
				
			||||||
	stw r6,0(DS_REG)
 | 
						stw r6,0(DS_REG)
 | 
				
			||||||
	blr
 | 
						blr
 | 
				
			||||||
multiply_overflow:
 | 
					multiply_overflow:
 | 
				
			||||||
	srawi r4,r4,3
 | 
						srawi r4,r4,4
 | 
				
			||||||
	b MANGLE(overflow_fixnum_multiply)
 | 
						b MANGLE(overflow_fixnum_multiply)
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
/* Note that the XT is passed to the quotation in r11 */
 | 
					/* Note that the XT is passed to the quotation in r11 */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,7 +33,7 @@ DEF(void,primitive_fixnum_multiply,(void *myvm)):
 | 
				
			||||||
	pop ARG2
 | 
						pop ARG2
 | 
				
			||||||
	ret
 | 
						ret
 | 
				
			||||||
multiply_overflow:
 | 
					multiply_overflow:
 | 
				
			||||||
	sar $3,ARITH_TEMP_1
 | 
						sar $4,ARITH_TEMP_1
 | 
				
			||||||
	mov ARITH_TEMP_1,ARG0
 | 
						mov ARITH_TEMP_1,ARG0
 | 
				
			||||||
	mov ARITH_TEMP_2,ARG1
 | 
						mov ARITH_TEMP_2,ARG1
 | 
				
			||||||
	pop ARG2
 | 
						pop ARG2
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue