This is the mail archive of the binutils@sourceware.org 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]
Other format: [Raw text]

Re: aarch64_opcode_table changes for BZ 19722


Hi Szabolcs,

> with the new verifier field some
> 
>  {a,b,c,d},
> 
> table entries were changed to
> 
>  {a,b,c,d,NULL},
> 
> others to
> 
>  c_INS(a,b,d),
> 
> the goal of those c_INS macros is not clear to me,
> is it just to align the opcode table columns?

No - it was to make future changes to the table easier to do and
to make the verifier functions stand out.

My original idea was that I would use macros for every entry, 
since I thought that a lot of the fields we duplicated in every 
entry.  Of course this turned out to be incorrect and I soon
realised that I would need too many macros, and that the macros
would not make anything clearer.  So instead I decided to use
macros just for the common cases - where the fields are 
duplicated - and to use explicit initialisation for the 
"interesting" instructions.  This also meant that it would be
easy to find which instructions had verifiers and which did not.

Cheers
  Nick


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