[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH 0/1] tricore: fixed faulty conditions for extr and imask
From: |
Konopik, Andreas (EFS-GH2) |
Subject: |
RE: [PATCH 0/1] tricore: fixed faulty conditions for extr and imask |
Date: |
Thu, 11 Feb 2021 10:02:44 +0000 |
Hi Richard,
thank you for your feedback.
> From: Richard Henderson <richard.henderson@linaro.org>
> Sent: Wednesday, February 10, 2021 20:02
> To: David Brenken <david.brenken@efs-auto.org>
> On 2/10/21 12:26 AM, David Brenken wrote:
> > From: Andreas Konopik <andreas.konopik@efs-auto.de>
> >
> > Hello together,
> >
> > we have fixed a few conditions leading to incorrect intermediate code
> > generation. RCPW_IMASK, RRPW_EXTR, RRPW_EXTR_U and RRPW_IMASK
> invoke
> > undefined behavior for "pos + width > 32", which is also checked in
> > tcg_gen_extract_tl(). RRRW_EXTR_U invokes undefined behavior for
> > "width == 0", hence we removed that condition.
>
> This is incorrect, because "undefined behavior" should not include a qemu
> abort.
I didn't notice that these checks terminated program execution.
> You could raise a guest exception, you could treat the faulty instruction as a
> nop, you could truncate the inputs to avoid the abort, you could write
> 0xdeadbeef to the destination.
>
> Or you could fix the couple of faulty conditions and leave the rest of the
> code
> as-is.
We will submit the patch following your advice as soon as possible.
Kind regards,
Andreas
INTERNAL