[Patch ARM Gas] - strexh/strexb warn for bad addressing modes.

James Greenhalgh james.greenhalgh@arm.com
Fri Jul 22 20:16:00 GMT 2011


Hi,

This patch fixes an issue with strex[b/h] in thumb mode.

strex[b/h] do not support an addressing mode with writeback.
This fault was caught correctly in ARM mode but was undiagnosed
under thumb.

Instructions of the form:
STREXH r0, r1, [r2, #+0x00]!
will now produce a "BAD_ADDR_MODE" error. This matches their
behaviour under ARM.

Tested using make check without regression.

James Greenhalgh

gas/

2011-07-22  James Greenhalgh  <james.greenhalgh@arm.com>

	* config/tc-arm.c (do_t_strexbh): New.
	(insns): Update accordingly.

gas/testsuite/

2011-07-22  James Greenhalgh  <james.greenhalgh@arm.com>

	* gas/arm/strex-bad-t.d: New testcase.
	* gas/arm/strex-bad-t.s: Likewise.
	* gas/arm/strex-bad-t.l: Likewise.
	* gas/arm/strex-t.s: Likewise.
	* gas/arm/strex-t.d: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Patch-ARM-Gas-strexh-strexb-warn-for-bad-addressing-.patch
Type: text/x-patch
Size: 5164 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20110722/22f0e7a6/attachment.bin>


More information about the Binutils mailing list