qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Leon Alrae <leon.alrae@imgtec.com>
To: Yongbok Kim <Yongbok.Kim@imgtec.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Cc: Cristian Cuna <Cristian.Cuna@imgtec.com>,
	"aurelien@aurel32.net" <aurelien@aurel32.net>
Subject: Re: [Qemu-devel] [PATCH v2] target-mips: fix broken MIPS16 and microMIPS
Date: Mon, 22 Sep 2014 14:55:01 +0100	[thread overview]
Message-ID: <54202A35.9040405@imgtec.com> (raw)
In-Reply-To: <22483EC52335AD41841BD2BC97D39CFC36FB7687@hhmail02.hh.imgtec.org>

Hi Yongbok,

For me this patch looks fine, just minor nitpicks:

>      if (blink > 0) {
>          int post_delay = insn_bytes;
>          int lowbit = !!(ctx->hflags & MIPS_HFLAG_M16);
>  
> -        if (opc != OPC_JALRC)
> -            post_delay += ((ctx->hflags & MIPS_HFLAG_BDS16) ? 2 : 4);
> -
> +        post_delay += delayslot_size;

Wouldn't it be better to remove this line add delayslot_size during
post_delay initialization?

> +    if (ctx->hflags & MIPS_HFLAG_BDS_STRICT) {
> +        switch (op & 0x7) { /* MSB-3..MSB-5 */
> +        case 0:
> +        /* POOL31A, POOL32B, POOL32I, POOL32C */

POOL32A :)

>      case OPC_J ... OPC_JAL: /* Jump */
>           offset = (int32_t)(ctx->opcode & 0x3FFFFFF) << 2;
> -         gen_compute_branch(ctx, op, 4, rs, rt, offset);
> +         gen_compute_branch(ctx, op, 4, rs, rt, offset, 4);
>           break;
>      case OPC_BEQ ... OPC_BGTZ: /* Branch */
>      case OPC_BEQL ... OPC_BGTZL:
> -         gen_compute_branch(ctx, op, 4, rs, rt, imm << 2);
> +            gen_compute_branch(ctx, op, 4, rs, rt, imm << 2, 4);

Indentation issue?

> @@ -15719,6 +15648,13 @@ gen_intermediate_code_internal(MIPSCPU *cpu, TranslationBlock *tb,
>              ctx.bstate = BS_STOP;
>              break;
>          }
> +        if (ctx.hflags & MIPS_HFLAG_BMASK) {
> +            if (!(ctx.hflags & MIPS_HFLAG_BDS16) &&
> +                    !(ctx.hflags & MIPS_HFLAG_BDS32)) {

IMHO it would look nicer if you made this condition shorter by ORing BDS
hflags.

Feel free to add:

Reviewed-by: Leon Alrae <leon.alrae@imgtec.com>

Regards,
Leon

  reply	other threads:[~2014-09-22 14:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-01 16:43 [Qemu-devel] [PATCH v2] target-mips: fix broken MIPS16 and microMIPS Yongbok Kim
2014-08-01 11:03 ` Yongbok Kim
2014-09-22 13:55   ` Leon Alrae [this message]
2014-09-29 13:03   ` Maciej W. Rozycki
2014-09-03 13:33 ` James Hogan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54202A35.9040405@imgtec.com \
    --to=leon.alrae@imgtec.com \
    --cc=Cristian.Cuna@imgtec.com \
    --cc=Yongbok.Kim@imgtec.com \
    --cc=aurelien@aurel32.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).