|
From: | Richard Henderson |
Subject: | Re: [PATCH v5 42/48] target/nios2: Implement rdprs, wrprs |
Date: | Tue, 15 Mar 2022 12:12:28 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 |
On 3/15/22 09:26, Amir Gonnen wrote:
Something is wrong when translating rdprs in an interrupt handler when CRS is 0x1. I'm hitting "../tcg/tcg.c:3466: tcg_reg_alloc_mov: Assertion `ts->val_type == TEMP_VAL_REG' failed." When stopped on that assertion I can see that : - ts->val_type = TEMP_VAL_DEAD - op->opc = INDEX_op_mov_i32 - ots->name = "pc" - cpu->ctrl[0] = 0x5f9 (that's STATUS so CRS = 1) - pc = 0xa2d5c so, it looks related to an assignment to PC a little after rdprs.
Ok, thanks for the report. Yes, it's a bug in the indirection lowering. r~
[Prev in Thread] | Current Thread | [Next in Thread] |