* gas/config/tc-arm.c (do_t_mov_cmp): Fix reporting of unpredictable and
deprecated mov register instructions. * gas/testsuite/gas/arm/thumb2_bad_reg.s: Update mov register tests. * gas/testsuite/gas/arm/thumb2_bad_reg.l: Likewise.
This commit is contained in:
parent
726d3ab069
commit
76fa04a48e
|
@ -1,3 +1,8 @@
|
|||
2010-07-01 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
|
||||
|
||||
* config/tc-arm.c (do_t_mov_cmp): Fix reporting of unpredictable and
|
||||
deprecated mov register instructions.
|
||||
|
||||
2010-07-01 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* config/tc-ppc.c (toc_reloc_types): New variable.
|
||||
|
|
|
@ -10273,9 +10273,24 @@ do_t_mov_cmp (void)
|
|||
reject_bad_reg (Rn);
|
||||
reject_bad_reg (Rm);
|
||||
}
|
||||
else if ((Rn == REG_SP || Rn == REG_PC)
|
||||
&& (Rm == REG_SP || Rm == REG_PC))
|
||||
reject_bad_reg (Rm);
|
||||
else if (narrow)
|
||||
{
|
||||
/* This is mov.n. */
|
||||
if ((Rn == REG_SP || Rn == REG_PC)
|
||||
&& (Rm == REG_SP || Rm == REG_PC))
|
||||
{
|
||||
as_warn (_("Use of r%u as a source register is "
|
||||
"deprecated when r%u is the destination "
|
||||
"register."), Rm, Rn);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* This is mov.w. */
|
||||
constraint (Rn == REG_PC, BAD_PC);
|
||||
constraint (Rm == REG_PC, BAD_PC);
|
||||
constraint (Rn == REG_SP && Rm == REG_SP, BAD_SP);
|
||||
}
|
||||
}
|
||||
else
|
||||
reject_bad_reg (Rn);
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-07-01 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
|
||||
|
||||
* gas/arm/thumb2_bad_reg.s: Update mov register tests.
|
||||
* gas/arm/thumb2_bad_reg.l: Likewise.
|
||||
|
||||
2010-06-29 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* gas/maxq10/maxq10.exp: Delete file.
|
||||
|
|
|
@ -137,14 +137,24 @@
|
|||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mls r0,r0,r0,r15'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `mov.w r13,#1'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,#1'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r0,r15'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,r0'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs.w r0,r13'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `movs.w r0,r15'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs.w r13,r0'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `movs.w r15,r0'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `mov.w r13,r13'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `mov.w r15,r13'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,r13'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r13,r15'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,r15'
|
||||
[^:]*:[0-9]+: Warning: Use of r13 as a source register is deprecated when r13 is the destination register.
|
||||
[^:]*:[0-9]+: Warning: Use of r13 as a source register is deprecated when r15 is the destination register.
|
||||
[^:]*:[0-9]+: Warning: Use of r15 as a source register is deprecated when r13 is the destination register.
|
||||
[^:]*:[0-9]+: Warning: Use of r15 as a source register is deprecated when r15 is the destination register.
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs r13,r13'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `movs r15,r13'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs r13,r15'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `movs r15,r15'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `movt r13,#1'
|
||||
[^:]*:[0-9]+: Error: r15 not allowed here -- `movt r15,#1'
|
||||
[^:]*:[0-9]+: Error: r13 not allowed here -- `mrc p0,#1,r13,cr0,cr0'
|
||||
|
|
|
@ -191,8 +191,8 @@ test:
|
|||
mov r13, r0 @ OK
|
||||
mov r15, r0 @ OK
|
||||
mov.w r0, r13 @ OK
|
||||
mov.w r0, r15 @ OK
|
||||
mov.w r15, r0 @ OK
|
||||
mov.w r0, r15
|
||||
mov.w r15, r0
|
||||
mov.w r13, r0 @ OK
|
||||
movs.w r0, r13
|
||||
movs.w r0, r15
|
||||
|
@ -202,6 +202,14 @@ test:
|
|||
mov.w r15, r13
|
||||
mov.w r13, r15
|
||||
mov.w r15, r15
|
||||
mov r13, r13 @ Deprecated
|
||||
mov r15, r13 @ Deprecated
|
||||
mov r13, r15 @ Deprecated
|
||||
mov r15, r15 @ Deprecated
|
||||
movs r13, r13
|
||||
movs r15, r13
|
||||
movs r13, r15
|
||||
movs r15, r15
|
||||
@ MOVT
|
||||
movt r13, #1
|
||||
movt r15, #1
|
||||
|
|
Loading…
Reference in New Issue