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: Nick Clifton <nickc at redhat dot com>
- To: Tamar Christina <tamar dot christina at arm dot com>, binutils at sourceware dot org
- Cc: nd at arm dot com, Richard dot Earnshaw at arm dot com, marcus dot shawcroft at arm dot com
- Date: Wed, 8 Nov 2017 15:45:13 +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: ext-mx02.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx02.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=nickc at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com A6FD4883C0
- References: <20171108101055.GA19542@arm.com>
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