MSP430: Add 'd', 'e', 'f' and 'g' asm operand modifiers
authorJozef Lawrynowicz <jozef.l@mittosystems.com>
Fri, 18 Sep 2020 12:07:19 +0000 (13:07 +0100)
committerJozef Lawrynowicz <jozef.l@mittosystems.com>
Fri, 18 Sep 2020 12:07:19 +0000 (13:07 +0100)
commit2f8022873c72e4abed7987cfa6b8ab9de6e53971
treed8d955b484d5374c48c0c9b900c6bd1e5dab1b90
parent685c95ebc4906f6b58db2e3c81ad9ab73fdca794
MSP430: Add 'd', 'e', 'f' and 'g' asm operand modifiers

The new operand modifiers can be used to select odd-numbered bytes of a memory
reference or constant value.

gcc/ChangeLog:

* config/msp430/msp430.c (msp430_print_operand): Update comment.
Cast to long when printing values formatted as long.
Support 'd', 'e', 'f' and 'g' modifiers.
Extract operand value with a single operation for all modifiers.
* doc/extend.texi (msp430Operandmodifiers): New.

gcc/testsuite/ChangeLog:

* gcc.target/msp430/operand-modifiers.c: Extend test to handle new
modifiers.
* gcc.target/msp430/operand-modifiers-bad.c: New test.
gcc/config/msp430/msp430.c
gcc/doc/extend.texi
gcc/testsuite/gcc.target/msp430/operand-modifiers-bad.c [new file with mode: 0644]
gcc/testsuite/gcc.target/msp430/operand-modifiers.c