This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH, GAS/ARM] Allow assembly of IT blocks with AL condition
- From: Prakhar Bahuguna <prakhar dot bahuguna at arm dot com>
- To: "Richard Earnshaw (lists)" <Richard dot Earnshaw at arm dot com>, <binutils at sourceware dot org>
- Cc: <nd at arm dot com>, <Ramana dot Radhakrishnan at arm dot com>, <Kyrylo dot Tkachov at arm dot com>
- Date: Wed, 22 Mar 2017 13:54:02 +0000
- Subject: Re: [PATCH, GAS/ARM] Allow assembly of IT blocks with AL condition
- Authentication-results: sourceware.org; auth=none
- Authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
- Nodisclaimer: True
- References: <email@example.com> <firstname.lastname@example.org>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
On 22/03/2017 11:44:46, Richard Earnshaw (lists) wrote:
> It would also be nice to have an error test that shows that 'ite al'
> generates a suitable diagnostic.
Noted, I'll add one shortly.
> Is 'al' mandatory within such a block, or would we accept 'mov r0, #0'?
> (I'd be inclined to say we shouldn't, but that could be debated).
The current behaviour with the patch accepts 'mov r0, #0' within the IT
block, as the 'al' suffix is implicit if there isn't a conditional suffix.
Would it be preferable to explicitly demand the 'al' suffix in this particular
instance for clarity?
> What happens when -mimplicit-it=always is on and I write 'moval r0, #0'
> outside of an explicit IT block? Do I get a normal instruction, or does
> it insert an IT instruction before it?
The behaviour of implicit IT blocks is unaffected, so 'moval' on its own should
always give the normal instruction as again the 'al' suffix is considered
implicit if no conditional suffix is specified.