* gas/config/tc-arm.c (do_t_mov_cmp): Allow MOV lowreg, lowreg when no CPU

is specified.
	* gas/testsuite/gas/arm/mov-highregs-any.d: New testcase.
	* gas/testsuite/gas/arm/mov-highregs-any.s: Likewise.
	* gas/testsuite/gas/arm/mov-lowregs-any.d: Likewise.
	* gas/testsuite/gas/arm/mov-lowregs-any.s: Likewise.
This commit is contained in:
Matthew Gretton-Dann 2011-11-25 15:17:36 +00:00
parent a272e28c9d
commit c6400f8afd
7 changed files with 46 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2011-11-25 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* config/tc-arm.c (do_t_mov_cmp): Allow MOV lowreg, lowreg when no CPU
is specified.
2011-11-23 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (s_alpha_prologue): Requires empty line.

View File

@ -10914,10 +10914,16 @@ do_t_mov_cmp (void)
{
case T_MNEM_mov:
/* In v4t or v5t a move of two lowregs produces unpredictable
results. Don't allow this.*/
constraint (low_regs && !ARM_CPU_HAS_FEATURE (selected_cpu,
arm_ext_v6),"MOV Rd, Rs with two low registers is not "
"permitted on this architecture");
results. Don't allow this. */
if (low_regs)
{
constraint (!ARM_CPU_HAS_FEATURE (cpu_variant, arm_ext_v6),
"MOV Rd, Rs with two low registers is not "
"permitted on this architecture");
ARM_MERGE_FEATURE_SETS (thumb_arch_used, thumb_arch_used,
arm_ext_v6);
}
inst.instruction = T_OPCODE_MOV_HR;
inst.instruction |= (Rn & 0x8) << 4;
inst.instruction |= (Rn & 0x7);

View File

@ -1,3 +1,10 @@
2011-11-25 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* gas/arm/mov-highregs-any.d: New testcase.
* gas/arm/mov-highregs-any.s: Likewise.
* gas/arm/mov-lowregs-any.d: Likewise.
* gas/arm/mov-lowregs-any.s: Likewise.
2011-11-21 Maciej W. Rozycki <macro@codesourcery.com>
* gas/mips/micromips@24k-branch-delay-1.d: New test.

View File

@ -0,0 +1,9 @@
# name: MOV highregs
# readelf: -A
# target: *-*-*eabi
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v4T
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -0,0 +1,3 @@
.syntax unified
.thumb
mov r8, r8

View File

@ -0,0 +1,9 @@
# name: MOV lowregs
# readelf: -A
# target: *-*-*eabi
Attribute Section: aeabi
File Attributes
Tag_CPU_arch: v6
Tag_THUMB_ISA_use: Thumb-1
Tag_DIV_use: Not allowed

View File

@ -0,0 +1,3 @@
.syntax unified
.thumb
mov r0, r0