Shorter versions of the byte swapping code.

This commit is contained in:
Doug Rabson 2001-10-10 10:34:08 +00:00
parent d6a990d799
commit d7ed89186f
2 changed files with 7 additions and 15 deletions

View File

@ -39,10 +39,9 @@
*
* Argument is an unsigned 2-byte integer (u_int16_t).
*/
ENTRY(NAME, 1) /* in0 = 0x0123 */
extr.u r2=in0,8,8 /* r2 = 0x 01 */
dep r3=in0,r0,8,8 /* r3 = 0x23 */
;;
or ret0=r2,r3 /* ret0 = 0x2301 */
ENTRY(NAME, 1)
mux1 r16=in0,@rev
;;
extr.u r8=r16,48,16
br.ret.sptk.few rp
END(NAME)

View File

@ -39,16 +39,9 @@
*
* Argument is an unsigned 4-byte integer (u_int32_t).
*/
ENTRY(NAME, 1) /* in0 = 0x01234567 */
extr.u r16=in0,0,8 /* r16 = 0x 67 */
extr.u r17=in0,8,8 /* r17 = 0x 45 */
extr.u r18=in0,16,8 /* r18 = 0x 23 */
extr.u ret0=in0,24,8 /* ret0 = 0x 01 */
ENTRY(NAME, 1)
mux1 r16=in0,@rev
;;
dep ret0=r16,ret0,24,8 /* ret0 = 0x67 01 */
;;
dep ret0=r17,ret0,16,8 /* ret0 = 0x6745 01 */
;;
dep ret0=r18,ret0,8,8 /* ret0 = 0x67452301 */
extr.u r8=r16,32,32
br.ret.sptk.few rp
END(NAME)