diff options
author | Paul Brook <paul@codesourcery.com> | 2006-09-08 15:51:02 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2006-09-08 15:51:02 +0000 |
commit | f91e006cf5ee5e3109aa2d056abf94449588a993 (patch) | |
tree | 9fcc468f2780c094de7d33de9e96797dcea24bb4 /gas | |
parent | 2006-09-08 H.J. Lu <hongjiu.lu@intel.com> (diff) | |
download | binutils-gdb-f91e006cf5ee5e3109aa2d056abf94449588a993.tar.gz binutils-gdb-f91e006cf5ee5e3109aa2d056abf94449588a993.tar.bz2 binutils-gdb-f91e006cf5ee5e3109aa2d056abf94449588a993.zip |
2006-09-08 Paul Brook <paul@codesourcery.com>
gas/
* config/tc-arm.c (insns): Allow ARM IT pseudo-insn on all cores.
gas/testsuite/
* gas/arm/arm-it.s: New test.
* gas/arm/arm-it.d: New test.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 4 | ||||
-rw-r--r-- | gas/config/tc-arm.c | 4 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/arm-it.d | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/arm-it.s | 8 |
5 files changed, 29 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index beaf18b1cfb..b5dd1723aa6 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2006-09-08 Paul Brook <paul@codesourcery.com> + + * config/tc-arm.c (insns): Allow ARM IT pseudo-insn on all cores. + 2006-09-07 Paul Brook <paul@codesourcery.com> * config/tc-arm.c (parse_operands): Mark operand as present. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 8388379ce1a..a6f8b6bd3fa 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -14828,7 +14828,9 @@ static const struct asm_opcode insns[] = UT(cbnz, b900, 2, (RR, EXP), t_czb), UT(cbz, b100, 2, (RR, EXP), t_czb), - /* ARM does not really have an IT instruction. */ + /* ARM does not really have an IT instruction, so always allow it. */ +#undef ARM_VARIANT +#define ARM_VARIANT &arm_ext_v1 TUE(it, 0, bf08, 1, (COND), it, t_it), TUE(itt, 0, bf0c, 1, (COND), it, t_it), TUE(ite, 0, bf04, 1, (COND), it, t_it), diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 7dcdabd606c..4533f544088 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-09-08 Paul Brook <paul@codesourcery.com> + + * gas/arm/arm-it.s: New test. + * gas/arm/arm-it.d: New test. + 2006-09-07 Paul Brook <paul@codesourcery.com> * gas/arm/neon-omit.s: Test three-argument variants. diff --git a/gas/testsuite/gas/arm/arm-it.d b/gas/testsuite/gas/arm/arm-it.d new file mode 100644 index 00000000000..674f815f1de --- /dev/null +++ b/gas/testsuite/gas/arm/arm-it.d @@ -0,0 +1,9 @@ +#name: ARM IT instruction +#objdump: -dr --prefix-addresses --show-raw-insn +#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + +.*: +file format .*arm.* + +Disassembly of section .text: +0+000 <[^>]*> 03a00000 ? moveq r0, #0 ; 0x0 +0+004 <[^>]*> e1a0f00e ? mov pc, lr diff --git a/gas/testsuite/gas/arm/arm-it.s b/gas/testsuite/gas/arm/arm-it.s new file mode 100644 index 00000000000..f3c56e8c4b7 --- /dev/null +++ b/gas/testsuite/gas/arm/arm-it.s @@ -0,0 +1,8 @@ + # Check that IT is accepted in ARM mode on older architectures + .text + .syntax unified + .arch armv4 +label1: + it eq + moveq r0, #0 + mov pc, lr |