Thumb shifter carry flag fixes.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3083 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									4ce6f8de1a
								
							
						
					
					
						commit
						aa268ea622
					
				@ -819,7 +819,7 @@ void OPPROTO op_shll_T0_im_thumb(void)
 | 
				
			|||||||
    int shift;
 | 
					    int shift;
 | 
				
			||||||
    shift = PARAM1;
 | 
					    shift = PARAM1;
 | 
				
			||||||
    if (shift != 0) {
 | 
					    if (shift != 0) {
 | 
				
			||||||
	env->CF = (T1 >> (32 - shift)) & 1;
 | 
						env->CF = (T0 >> (32 - shift)) & 1;
 | 
				
			||||||
	T0 = T0 << shift;
 | 
						T0 = T0 << shift;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    env->NZF = T0;
 | 
					    env->NZF = T0;
 | 
				
			||||||
@ -832,7 +832,7 @@ void OPPROTO op_shrl_T0_im_thumb(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    shift = PARAM1;
 | 
					    shift = PARAM1;
 | 
				
			||||||
    if (shift == 0) {
 | 
					    if (shift == 0) {
 | 
				
			||||||
	env->CF = ((uint32_t)shift) >> 31;
 | 
						env->CF = ((uint32_t)T0) >> 31;
 | 
				
			||||||
	T0 = 0;
 | 
						T0 = 0;
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
	env->CF = (T0 >> (shift - 1)) & 1;
 | 
						env->CF = (T0 >> (shift - 1)) & 1;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user