diff options
author | dfr <dfr@FreeBSD.org> | 2001-10-06 08:35:05 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 2001-10-06 08:35:05 +0000 |
commit | 1ccf57de34a8c8d3b3180985e03ffedc96ca8289 (patch) | |
tree | bddf85fac63fbaeb967df3434e1786ec162fadef /sys/libkern/ia64/byte_swap_2.S | |
parent | b76a3279bdca63c6fc6b203fbed361dd934f9d0b (diff) | |
download | FreeBSD-src-1ccf57de34a8c8d3b3180985e03ffedc96ca8289.zip FreeBSD-src-1ccf57de34a8c8d3b3180985e03ffedc96ca8289.tar.gz |
Implement these using mux1 and extr.u. I'll update the userland versions
similarly. Actually, they should be inline on gcc.
Diffstat (limited to 'sys/libkern/ia64/byte_swap_2.S')
-rw-r--r-- | sys/libkern/ia64/byte_swap_2.S | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/libkern/ia64/byte_swap_2.S b/sys/libkern/ia64/byte_swap_2.S index c758184..fbee3c8 100644 --- a/sys/libkern/ia64/byte_swap_2.S +++ b/sys/libkern/ia64/byte_swap_2.S @@ -39,9 +39,9 @@ * * Argument is an unsigned 2-byte integer (u_int16_t). */ -ENTRY(NAME, 1) /* in0 = 0x0123 */ - extr.u ret0=in0,8,8 /* ret0 = 0x 01 */ - ;; - dep ret0=ret0,in0,8,8 /* ret0 = 0x2301 */ +ENTRY(NAME, 1) + mux1 r16=in0,@rev + ;; + extr.u r8=r16,48,16 br.ret.sptk.few rp END(NAME) |