This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH][GAS][AArch64] Add new fields and operands required for Armv8.4-a [Patch (1/6)]
- From: Tamar Christina <Tamar dot Christina at arm dot com>
- To: "nickc at redhat dot com" <nickc at redhat dot com>, "binutils at sourceware dot org" <binutils at sourceware dot org>
- Cc: nd <nd at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>, "Marcus Shawcroft" <Marcus dot Shawcroft at arm dot com>
- Date: Wed, 8 Nov 2017 15:57:46 +0000
- Subject: RE: [PATCH][GAS][AArch64] Add new fields and operands required for Armv8.4-a [Patch (1/6)]
- Authentication-results: sourceware.org; auth=none
- Authentication-results: spf=none (sender IP is ) smtp.mailfrom=Tamar dot Christina at arm dot com;
- Nodisclaimer: True
- References: <20171108101055.GA19542@arm.com> <865c7412-030a-7fa7-989e-d1828cf196ff@redhat.com>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
Hi Nick,
Hmm I didn't try this building this from a 32 bit host.
I'll respin the patch. Though I think it might be better to
Redefine aarch64_feature_set as we'll likely be adding more.
Thanks,
Tamar
> -----Original Message-----
> From: Nick Clifton [mailto:nickc@redhat.com]
> Sent: 08 November 2017 15:45
> To: Tamar Christina; binutils@sourceware.org
> Cc: nd; Richard Earnshaw; Marcus Shawcroft
> Subject: 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
>