This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Patch to implement rotates by zero
- From: "Maciej W. Rozycki" <macro at ds2 dot pg dot gda dot pl>
- To: cgd at broadcom dot com
- Cc: rsandifo at redhat dot com, binutils at sources dot redhat dot com, echristo at redhat dot com
- Date: Tue, 20 Aug 2002 15:19:18 +0200 (MET DST)
- Subject: Re: Patch to implement rotates by zero
- Organization: Technical University of Gdansk
On 17 Aug 2002 cgd@broadcom.com wrote:
> AFAIK, 'sll' w/ a shift of 0 is only guaranteed to sign-extend by
> MIPS64. I've seen no previous documentation that defined that it must
> work that way.
Well, the behaviour is defined explicitly for "sll" and "sllv" by "MIPS
R4000 Microprocessor User's Manual" (pp. A-140, A-141), the original spec
for the original MIPS III processor, so the assumption should be any MIPS
III+ implementation must do them this way; otherwise it is non-compliant
(or simply broken). There is a note on broken code generated by some
assemblers there, though. The book is available from www.mips.com.
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +