[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Bug 1810545] Re: [alpha] Strange exception address rep
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [Bug 1810545] Re: [alpha] Strange exception address reported |
Date: |
Mon, 7 Jan 2019 19:00:24 +0000 |
On Mon, 7 Jan 2019 at 18:10, Peter Maydell <address@hidden> wrote:
(re: https://bugs.launchpad.net/bugs/1810545)
> The problem seems to be that the PC we report for an OPCDEC
> is first selected by gen_invalid()/gen_excp() in
> target/alpha/translate.c, which uses pc_next (ie the insn's
> address plus 4). But that is then handed through to our custom
> PALcode
> (https://git.qemu.org/?p=qemu-palcode.git;a=blob;f=pal.S;h=1781c4b415700ca3a68af07fdae90ae43e722501;hb=HEAD)
> which does
> addq p6, 4, p1 // increment past the faulting insn
> resulting in insn + 8.
>
> That is, the palcode and the QEMU code have a disagreement about what
> the (private) API between them is. I'm not sure which side is wrong and
> should be corrected. I think the linux-user code assumes the same thing
> that translate.c is doing, so perhaps the palcode.
Richard -- any suggestions for which side of this API we should
be changing?
thanks
-- PMM