This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Could you please update arm testsuite?
- From: Nick Clifton <nickc at redhat dot com>
- To: Richard dot Earnshaw at arm dot com
- Cc: binutils at sources dot redhat dot com
- Date: 23 Sep 2002 17:46:45 +0100
- Subject: Re: Could you please update arm testsuite?
- References: <200209211139.g8LBdKv15362@pc960.cambridge.arm.com>
Hi Richard,
> The old examples (well, the two distinct failures) should probably
> be added to armv1-bad.[sl]
Good idea. I will apply the patch below.
Cheers
Nick
2002-09-23 Nick Clifton <nickc@redhat.com>
* gas/arm/armv1-bad.s: Add LDM and STM instructions which are
unpredictable because of their use of the writeback bit.
Index: gas/testsuite/gas/arm/armv1-bad.l
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/arm/armv1-bad.l,v
retrieving revision 1.1
diff -c -3 -p -w -r1.1 armv1-bad.l
*** gas/testsuite/gas/arm/armv1-bad.l 14 Jan 2002 15:00:18 -0000 1.1
--- gas/testsuite/gas/arm/armv1-bad.l 23 Sep 2002 16:44:18 -0000
***************
*** 6,8 ****
--- 6,12 ----
[^:]*:8: Error: invalid constant -- `mov r0,#0x1ff'
[^:]*:9: Error: bad instruction `cmpl r0,r0'
[^:]*:10: Error: selected processor does not support `strh r0,\[r1\]'
+ [^:]*:11: Warning: writeback of base register is UNPREDICTABLE
+ [^:]*:12: Warning: writeback of base register when in register list is UNPREDICTABLE
+ [^:]*:13: Warning: writeback of base register is UNPREDICTABLE
+ [^:]*:15: Warning: if writeback register is in list, it must be the lowest reg in the list
Index: gas/testsuite/gas/arm/armv1-bad.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/arm/armv1-bad.s,v
retrieving revision 1.1
diff -c -3 -p -w -r1.1 armv1-bad.s
*** gas/testsuite/gas/arm/armv1-bad.s 14 Jan 2002 15:00:18 -0000 1.1
--- gas/testsuite/gas/arm/armv1-bad.s 23 Sep 2002 16:44:18 -0000
*************** entry:
*** 8,10 ****
--- 8,15 ----
mov r0, #0x1ff
cmpl r0, r0
strh r0, [r1]
+ ldmfa r4!, {r8, r9}^
+ ldmfa r4!, {r4, r8, r9}
+ stmfa r4!, {r8, r9}^
+ stmdb r4!, {r4, r8, r9} @ This is OK.
+ stmdb r8!, {r4, r8, r9}