target-arm: Fix handling of AL condition in IT instruction
Do not try to insert a conditional jump over next instruction when the condition code is AL as this will trigger an internal error. Signed-off-by: Johan Bengtsson <teofrastius@gmail.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
		
							parent
							
								
									3f90f252ec
								
							
						
					
					
						commit
						bedd2912c8
					
				| @ -8336,9 +8336,11 @@ static void disas_thumb_insn(CPUState *env, DisasContext *s) | ||||
| 
 | ||||
|     if (s->condexec_mask) { | ||||
|         cond = s->condexec_cond; | ||||
|         s->condlabel = gen_new_label(); | ||||
|         gen_test_cc(cond ^ 1, s->condlabel); | ||||
|         s->condjmp = 1; | ||||
|         if (cond != 0x0e) {     /* Skip conditional when condition is AL. */ | ||||
|           s->condlabel = gen_new_label(); | ||||
|           gen_test_cc(cond ^ 1, s->condlabel); | ||||
|           s->condjmp = 1; | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     insn = lduw_code(s->pc); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Johan Bengtsson
						Johan Bengtsson