target-arm: Update condexec before CP access check in AA32 translation
authorSergey Fedorov <serge.fdrv@gmail.com>
Tue, 17 Nov 2015 13:38:46 +0000 (16:38 +0300)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 19 Nov 2015 12:11:42 +0000 (12:11 +0000)
Coprocessor access instructions are allowed inside IT block.
gen_helper_access_check_cp_reg() can raise an exceptions thus condexec
bits should be updated before.

Signed-off-by: Sergey Fedorov <serge.fdrv@gmail.com>
Message-id: 1447767527-21268-2-git-send-email-serge.fdrv@gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target-arm/translate.c

index 43518541e1dd584383b3f1cc783d5dce2a2a6345..739f373fc27b82bee91eaa31b46300d7671d72c0 100644 (file)
@@ -7210,6 +7210,7 @@ static int disas_coproc_insn(DisasContext *s, uint32_t insn)
                 break;
             }
 
+            gen_set_condexec(s);
             gen_set_pc_im(s, s->pc - 4);
             tmpptr = tcg_const_ptr(ri);
             tcg_syn = tcg_const_i32(syndrome);