summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorcognet <cognet@FreeBSD.org>2006-08-21 14:42:47 +0000
committercognet <cognet@FreeBSD.org>2006-08-21 14:42:47 +0000
commitcf0232c4fc4a1a3949a739a250a1067625127b63 (patch)
tree1c21a11e7d80ab5efd21b8f14064407fc4853a1d /lib
parentc31cf4b01516585cb63d0b90a8cecf736e3453a3 (diff)
downloadFreeBSD-src-cf0232c4fc4a1a3949a739a250a1067625127b63.zip
FreeBSD-src-cf0232c4fc4a1a3949a739a250a1067625127b63.tar.gz
If __ARMEB__ is defined, we're already using the network byte order, so
there's no need to to anything in the hton* functions, beside returning the parameter. Spotted out by: Oleksandr Tymoshenko <gonzo@freebsd.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/arm/net/htonl.S2
-rw-r--r--lib/libc/arm/net/htons.S2
-rw-r--r--lib/libc/arm/net/ntohl.S2
-rw-r--r--lib/libc/arm/net/ntohs.S2
4 files changed, 8 insertions, 0 deletions
diff --git a/lib/libc/arm/net/htonl.S b/lib/libc/arm/net/htonl.S
index 152511e..33bc588 100644
--- a/lib/libc/arm/net/htonl.S
+++ b/lib/libc/arm/net/htonl.S
@@ -41,8 +41,10 @@ __FBSDID("$FreeBSD$");
_ENTRY(_C_LABEL(htonl))
_PROF_PROLOGUE
+#ifndef __ARMEB__
eor r1, r0, r0, ror #16
bic r1, r1, #0x00FF0000
mov r0, r0, ror #8
eor r0, r0, r1, lsr #8
+#endif
mov pc, lr
diff --git a/lib/libc/arm/net/htons.S b/lib/libc/arm/net/htons.S
index c031c1d..c211792 100644
--- a/lib/libc/arm/net/htons.S
+++ b/lib/libc/arm/net/htons.S
@@ -41,7 +41,9 @@ __FBSDID("$FreeBSD$");
_ENTRY(_C_LABEL(htons))
_PROF_PROLOGUE
+#ifndef __ARMEB__
and r1, r0, #0xff
mov r0, r0, lsr #8
orr r0, r0, r1, lsl #8
+#endif
mov pc, lr
diff --git a/lib/libc/arm/net/ntohl.S b/lib/libc/arm/net/ntohl.S
index 5b5e0a9..eef7a5a 100644
--- a/lib/libc/arm/net/ntohl.S
+++ b/lib/libc/arm/net/ntohl.S
@@ -41,8 +41,10 @@ __FBSDID("$FreeBSD$");
_ENTRY(_C_LABEL(ntohl))
_PROF_PROLOGUE
+#ifndef __ARMEB__
eor r1, r0, r0, ror #16
bic r1, r1, #0x00FF0000
mov r0, r0, ror #8
eor r0, r0, r1, lsr #8
+#endif
mov pc, lr
diff --git a/lib/libc/arm/net/ntohs.S b/lib/libc/arm/net/ntohs.S
index 8c44db6..61dad4a 100644
--- a/lib/libc/arm/net/ntohs.S
+++ b/lib/libc/arm/net/ntohs.S
@@ -41,7 +41,9 @@ __FBSDID("$FreeBSD$");
_ENTRY(_C_LABEL(ntohs))
_PROF_PROLOGUE
+#ifndef __ARMEB__
and r1, r0, #0xff
mov r0, r0, lsr #8
orr r0, r0, r1, lsl #8
+#endif
mov pc, lr
OpenPOWER on IntegriCloud