This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Patch: x86_64 disassembler support


On Wed, 3 Jan 2001, Jan Hubicka wrote:

> 	(dis386_att): Change templates of instruction implicitly promoted
> 	to 64bit; change e?? to RMe?? for unwind RM byte instructions.
> 	(grps): Likewise.
> 	(dis386_intel): Likewise.

Why the above changes when you have a new table for x86_64?  Seems to me
like an unnecessary change, perhaps from when you were attempting to
implement without a separate table?

The diff would be a little clearer and easier to review if you moved the
x86_64 tables after the existing tables too.  I generally prefer diff -u,
but that's just a personal preference.

> + 	/* REX prefixes familly.  */
family

> +       info->fprintf_func (info->stream, "        # ");
(*info->fprintf_func) for K&R

>                   case d_mode:
>                     oappend("QWORD PTR ");
>                     break;
> +                 case m_mode:
> +                 if (mode_64bit)
> +                   oappend("DWORD PTR ");
Please fix existing bad formatting here rather than following it.

> !   unsigned int a=0;
> !   unsigned int b=0;
spaces around `='

> !   x=a+((bfd_vma)b<<32);
formatting here too

> !   x = *codep++ & (bfd_signed_vma)0xff;
space after `)'  Check other places in patch too.  

> !   /* FIXME: This expects that sizeof(int) == 4!  */
> !   x = (int)x;
please cure this.

Alan
-- 
Linuxcare.  Support for the Revolution.








Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]