<p dir="ltr"><br>
On 14 May 2013 11:09, "Stephen Rothwell" <<a href="mailto:sfr@canb.auug.org.au">sfr@canb.auug.org.au</a>> wrote:<br>
><br>
> Hi Mikey,<br>
><br>
> On Mon, 13 May 2013 17:09:59 +1000 Michael Neuling <<a href="mailto:mikey@neuling.org">mikey@neuling.org</a>> wrote:<br>
> ><br>
> > This doesn't work for me but the below does:<br>
> ><br>
> > _GLOBAL(__bswapdi2)<br>
> >       rotlwi  r9,r4,8<br>
> >       rotlwi  r10,r3,8<br>
> >       rlwimi  r9,r4,24,0,7<br>
> >       rlwimi  r10,r3,24,0,7<br>
> >       rlwimi  r9,r4,24,16,23<br>
> >       rlwimi  r10,r3,24,16,23<br>
> >       mr      r4,r10<br>
> >       mr      r3,r9<br>
> >       blr<br>
> ><br>
> > stolen from GCC -02 output of:<br>
> >   unsigned long long __bswapdi2(unsigned long long x)<br>
> >   {<br>
> >        return ((x & 0x00000000000000ffULL) << 56) |<br>
> >               ((x & 0x000000000000ff00ULL) << 40) |<br>
> >               ((x & 0x0000000000ff0000ULL) << 24) |<br>
> >               ((x & 0x00000000ff000000ULL) <<  8) |<br>
> >               ((x & 0x000000ff00000000ULL) >>  8) |<br>
> >               ((x & 0x0000ff0000000000ULL) >> 24) |<br>
> >               ((x & 0x00ff000000000000ULL) >> 40) |<br>
> >               ((x & 0xff00000000000000ULL) >> 56);<br>
> >   }<br>
><br>
> So, if we are just stealing the output of gcc, why not just use the C<br>
> version (at least for 32 bit)?</p>
<p dir="ltr">Woodhouse: can we just do this?</p>
<p dir="ltr">Mikey     </p>