This is the mail archive of the 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]

[PATCH, GAS/ARM] Allow assembly of IT blocks with AL condition

According to the ARMv7-M reference manual, section A7.7.37, the IT instruction
is permitted to accept the AL condition, provided the suffix does not have an
else. However, the assembler does not allow the AL condition to be specified at
all. This patch allows instructions to have the AL condition if they are within
an explicitly defined IT block with the matching condition.

2017-02-28  Prakhar Bahuguna  <>


	* gas/config/tc-arm.c (it_fsm_pre_encode): Change conditional to first
	check for MANUAL_IT_BLOCK state, and update explanatory comment.
	* gas/testsuite/gas/arm/arm-it-al.d: New file.
	* gas/testsuite/gas/arm/arm-it-al.s: New file.

Testing done: Ran all gas regression tests, added new test to ensure IT with AL
condition assembles as expected with instructions outside of IT blocks
remaining unaffected.

Okay for master?


Prakhar Bahuguna

Attachment: 0001-Allow-assembly-of-IT-blocks-with-AL-condition.patch
Description: Text document

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