On Fri, 5 Mar 1999, Richard Atterer wrote:

> In article <[EMAIL PROTECTED]>
>     Russell King - ARM Linux Admin <[EMAIL PROTECTED]> wrote:
> 
> > The ARM2 data book says:
> > 
> > 'In the case of post-indexed addressing, the write back bit is
> > redundant, since the old base value can be retained by setting the
> > offset to zero.'
> > 
> > Hence, when specifing an offset of zero, since no writeback is
> > performed, the result is predictable.  However, the question now is,
> > does this apply to the later processors?  Have ARM updated their ARM
> > to include this? Did they purposely remove this?  Or what?
> 
> I don't read the above quote as
> 
>   "if the offset is 0, no writeback is performed",
>   
> rather as
> 
>   "since 0 is added, it's as if no writeback had taken place".

Agreed.  I've now had confirmation from ARM Ltd that LDRT Rm, [Rm] results
in UNPREDICTABLE behaviour.  So it appears that binutils is correct and we
should fix the kernel.

> IMHO egcs really ought to produce 'ldrbt r6,[r6,#0]' instead of
> 'ldrbt r6,[r6],#0'.

That would be even worse; it's not a legal instruction.  There is no
pre-indexed version of LDRT.

p.

unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]

Reply via email to