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: [PATCH][GAS][AArch64] Add new fields and operands required for Armv8.4-a [Patch (1/6)]


Hi Tamar,

> This patch adds the new Fields and Operand types for the new
> instructions in Armv8.4-a.

This patch fails to build on a 32-bit host.  The error is:

  In file included from opcodes/aarch64-opc.h:25:0,
                   from opcodes/aarch64-opc.c:32:
  include/opcode/aarch64.h:110:38: error: large integer implicitly truncated to unsigned type [-Werror=overflow]
   #define AARCH64_FEATURE(core,coproc) ((core) | (coproc))
                                      ^
  opcodes/aarch64-tbl.h:2008:3: note: in expansion of macro 'AARCH64_FEATURE'
     AARCH64_FEATURE (AARCH64_FEATURE_CRYPTO | AARCH64_FEATURE_AES

And similarly for the AARCh64_FEATRUE_SHA2.

Essentially you have a type discrepancy between the aarch64_feature_set type
(an unsigned long) and these new feature defines which are unsigned long long
values...

>From a visual scan of the defines in aarch64.h, it looks like there are some
bits that are not currently being used as feature values.  Maybe you could use
these ?

Cheers
  Nick
 


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