[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 4/4] target-tricore: Added new JNE instruction v
From: |
Bastian Koppelmann |
Subject: |
Re: [Qemu-devel] [PATCH 4/4] target-tricore: Added new JNE instruction variant |
Date: |
Mon, 30 May 2016 10:17:23 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.0 |
On 05/30/2016 12:59 AM, address@hidden wrote:
> From: Peer Adelt <address@hidden>
>
> If D[15] is != sign_ext(const4) then PC will be set to (PC +
> zero_ext(disp4 + 16)).
>
> Signed-off-by: Peer Adelt <address@hidden>
> ---
> target-tricore/translate.c | 1 +
> target-tricore/tricore-opcodes.h | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/target-tricore/translate.c b/target-tricore/translate.c
> index 2145f64..9ad9fcc 100644
> --- a/target-tricore/translate.c
> +++ b/target-tricore/translate.c
> @@ -3363,6 +3363,7 @@ static void gen_compute_branch(DisasContext *ctx,
> uint32_t opc, int r1,
> gen_branch_condi(ctx, TCG_COND_EQ, cpu_gpr_d[15], constant, offset);
> break;
> case OPC1_16_SBC_JNE:
> + case OPC1_16_SBC_JNE16:
> gen_branch_condi(ctx, TCG_COND_NE, cpu_gpr_d[15], constant, offset);
> break;
You forgot to call gen_compute_branch() from decode_16Bit_opc() for this
instruction, which should do the addition of 16 to disp4. Also please
add a check for 1.6+ ISA as suggested for the patch before.
Cheers,
Bastian