On 8/19/21 6:50 AM, Richard Henderson wrote:
On 8/19/21 3:40 AM, Peter Maydell wrote:
uint32_t insn;
bool is_16bit;
- if (arm_pre_translate_insn(dc)) {
+ if (arm_check_ss_active(dc) || arm_check_kernelpage(dc)) {
Is it not possible to get a misaligned PC in the Thumb case ?
No. The thumb bit is always removed, leaving all pc aligned mod 2.
Both BXWritePC and BranchWritePC do this, as do we in gen_bx and store_reg.
Do you think it's worth an assert here to make sure we never miss a case? I did an audit
of the exception code and it looks like we mask everything correctly there, but...
r~