Revision e87b7cb0 target-arm/translate.c
b/target-arm/translate.c | ||
---|---|---|
9551 | 9551 |
* This is handled in the same way as restoration of the |
9552 | 9552 |
* PC in these situations: we will be called again with search_pc=1 |
9553 | 9553 |
* and generate a mapping of the condexec bits for each PC in |
9554 |
* gen_opc_condexec_bits[]. gen_pc_load[] then uses this to restore
|
|
9555 |
* the condexec bits. |
|
9554 |
* gen_opc_condexec_bits[]. restore_state_to_opc() then uses
|
|
9555 |
* this to restore the condexec bits.
|
|
9556 | 9556 |
* |
9557 | 9557 |
* Note that there are no instructions which can read the condexec |
9558 | 9558 |
* bits, and none which can write non-static values to them, so |
... | ... | |
9817 | 9817 |
#endif |
9818 | 9818 |
} |
9819 | 9819 |
|
9820 |
void gen_pc_load(CPUState *env, TranslationBlock *tb, |
|
9821 |
unsigned long searched_pc, int pc_pos, void *puc) |
|
9820 |
void restore_state_to_opc(CPUState *env, TranslationBlock *tb, int pc_pos) |
|
9822 | 9821 |
{ |
9823 | 9822 |
env->regs[15] = gen_opc_pc[pc_pos]; |
9824 | 9823 |
env->condexec_bits = gen_opc_condexec_bits[pc_pos]; |
Also available in: Unified diff