From 945e0f82dad31db89a107b496532886fe215c011 Mon Sep 17 00:00:00 2001 From: Claudiu Zissulescu Date: Tue, 3 May 2016 13:44:13 +0200 Subject: [ARC] Add SYNTAX_NOP and SYNTAX_1OP for extension instructions gas/ 2016-05-03 Claudiu Zissulescu * config/tc-arc.c (syntaxclass): Add SYNTAX_NOP and SYNTAX_1OP. (arc_extinsn): Handle new introduced syntax. * testsuite/gas/arc/textinsn1op.d: New file. * testsuite/gas/arc/textinsn1op.s: Likewise. * doc/c-arc.texi: Document SYNTAX_NOP and SYNTAX_1OP. opcodes/ 2016-05-03 Claudiu Zissulescu * arc-ext.c (dump_ARC_extmap): Handle SYNATX_NOP and SYNTAX_1OP. (arcExtMap_genOpcode): Likewise. * arc-opc.c (arg_32bit_rc): Define new variable. (arg_32bit_u6): Likewise. (arg_32bit_limm): Likewise. include/ 2016-05-03 Claudiu Zissulescu * opcode/arc.h (ARC_SYNTAX_1OP): Declare (ARC_SYNTAX_NOP): Likewsie. (ARC_OP1_MUST_BE_IMM): Update defined value. (ARC_OP1_IMM_IMPLIED): Likewise. (arg_32bit_rc, arg_32bit_u6, arg_32bit_limm): Declare. --- gas/testsuite/gas/arc/textinsn1op.d | 17 +++++++++++++++++ gas/testsuite/gas/arc/textinsn1op.s | 12 ++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 gas/testsuite/gas/arc/textinsn1op.d create mode 100644 gas/testsuite/gas/arc/textinsn1op.s (limited to 'gas/testsuite') diff --git a/gas/testsuite/gas/arc/textinsn1op.d b/gas/testsuite/gas/arc/textinsn1op.d new file mode 100644 index 0000000..1bf1559 --- /dev/null +++ b/gas/testsuite/gas/arc/textinsn1op.d @@ -0,0 +1,17 @@ +#objdump: -dr + +.*: +file format .*arc.* + + + +Disassembly of section .text: + +[0-9a-f]+ <.text>: + 0: 3e2f 703f myinsn r0 + 4: 3e6f 7ebf myinsn 0x3a + 8: 3e2f 7fbf dead beef myinsn 0xdeadbeef + 10: 3e2f 7fbf 0000 0000 myinsn 0 + 14: R_ARC_32_ME label + 18: 3e2f 7fbf 0000 0000 myinsn 0 + 1c: R_ARC_PC32 label + 20: 386f 203f noop diff --git a/gas/testsuite/gas/arc/textinsn1op.s b/gas/testsuite/gas/arc/textinsn1op.s new file mode 100644 index 0000000..f14b39a --- /dev/null +++ b/gas/testsuite/gas/arc/textinsn1op.s @@ -0,0 +1,12 @@ +# Test 1OP and NOP syntax + + .extInstruction noop, 0x07, 0x10, SUFFIX_FLAG, SYNTAX_NOP + .extInstruction myinsn, 0x07, 0x3E, SUFFIX_FLAG, SYNTAX_1OP + + myinsn r0 + myinsn 0x3A + myinsn 0xdeadbeef + myinsn @label + myinsn @label@pcl + + noop -- cgit v1.1