[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [4875] Remove unintended dereference, kills a warning (
From: |
Laurent Desnogues |
Subject: |
Re: [Qemu-devel] [4875] Remove unintended dereference, kills a warning (Jan Kiszka). |
Date: |
Wed, 16 Jul 2008 14:30:08 +0200 |
On Wed, Jul 16, 2008 at 2:04 PM, Andreas Schwab <address@hidden> wrote:
> Andrzej Zaborowski <address@hidden> writes:
>
>> void OPPROTO op_tasb_rN(void)
>> {
>> - cond_t(*(int8_t *) env->gregs[PARAM1] == 0);
>> - *(int8_t *) env->gregs[PARAM1] |= 0x80;
>> + cond_t((env->gregs[PARAM1] && 0xff) == 0);
>> + *(int8_t *) &env->gregs[PARAM1] |= 0x80;
>
> That does not make any sense at all. The TAS insn operates on memory,
> not on a register (atomic operations only make sense on memory anyway).
SH4 documentation says this:
TAS.B @Rn
If (Rn) = 0, 1 → T, else 0 → T
1 → MSB of (Rn)
So indeed it looks like Jan and Andrzej patch is wrong.
Laurent