[PATCH][RX] v2 instructions support

Mike Frysinger vapier@gentoo.org
Fri Dec 25 16:57:00 GMT 2015


On 25 Dec 2015 23:19, Yoshinori Sato wrote:
> +rxfp_fsqrt (fp_t fa)
> ...
> +  tprintf("sqrt(%g) = %g\n", da, sqrt(da));
> +
> +  double_to_fp (sqrt(da), &c);

needs space before the ( -- comes up three times here

> +void
> +get_acc (int id, acc_t *acc)
>  {
> +  if (id >= 2)
> +    abort ();
> +  *acc = regs.r_acc[id];
> +  if (trace > 0)
> +    printf ("get_reg (%s) = %08x%016lx\n", reg_names[acc0 + id], acc->hi, acc->lo);

don't you want to use tprintf ?

> +put_acc (int id, acc_t *acc)
>  {
> +  if (id >= 2)
> +    abort ();
> +  if (trace > 0)
> +    printf ("put_reg (%s) = %08x%016lx\n", reg_names[acc0 + id], acc->hi, acc->lo);

same here

> +	{
> +	  if (tag) { printf (tag); tag = 0; }

need to unwrap this:
  if (tag)
    {
      printf (tag);
      tag = NULL;
    }

> +#define MULADD(val, s)				\
> +{						\
> + get_acc (opcode->op[0].reg - 32, &acc); 	\

these macro bodies are indented by one space when they should start at two

> +#define MULSUB(val, s)				\
> +{						\
> + get_acc (opcode->op[0].reg - 32, &acc);	\

same here

> +#define MULACC(val, s)				\
> +{						\
> + sll	  = val;				\

same here

> +#define RAC(add, pl, ml)			\
> +{						\
> + get_acc (opcode->op[0].reg - 32, &acc);	\

and here

> +    case RXO_emaca:
> +      MULADD((long long)GS2 () * (long long)GS (), 0)
> +
> +    case RXO_emsba:
> +      MULSUB((long long)GS2 () * (long long)GS (), 0)

space before the (

> +      tprintf ("(int) %g = %d\n", int2float(ma), mb);

space before the ( -- see int2float

> +      tprintf ("(int) %g = %d\n", int2float(ma), mb);

same here

>      case RXO_machi:
> +      MULADD((long long)(signed short)(GS() >> 16) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> +
> +    case RXO_maclh:
> +      MULADD((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> 
>      case RXO_maclo:
> +      MULADD((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 ()), 16)

comes up a few times here w/ MULADD & GS

> +    case RXO_msbhi:
> +      MULSUB((long long)(signed short)(GS() >> 16) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> +
> +    case RXO_msblh:
> +      MULSUB((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> +
> +    case RXO_msblo:
> +      MULSUB((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 ()), 16)
> 
>      case RXO_mulhi:
> +      MULACC((long long)(signed short)(GS() >> 16) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> +    case RXO_mullh:
> +      MULACC((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 () >> 16), 16)
> 
>      case RXO_mullo:
> +      MULACC((long long)(signed short)(GS()) *
> +	     (long long)(signed short)(GS2 ()), 16)

and here w/ MULSUB & GS & MULACC

>      case RXO_racw:
> +      RAC(0x80000000ULL, 0x00007fff00000000ULL, 0xffff800000000000ULL)
> +
> +    case RXO_rdacw:
> +      RAC(0, 0x00007fff00000000ULL, 0xffffffff80000000ULL)
> +
> +    case RXO_racl:
> +      RAC(0x80000000ULL, 0x7fffffff00000000ULL, 0xffffffff80000000ULL)
> +      
> +    case RXO_rdacl:
> +      RAC(0, 0x7fffffff00000000ULL, 0xffff800000000000ULL)

and here w/ RAC
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20151225/8c85a612/attachment.sig>


More information about the Gdb-patches mailing list