summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChung-Lin Tang <cltang@codesourcery.com>2012-04-24 21:32:11 +0800
committerThomas Schwinge <thomas@codesourcery.com>2012-04-25 14:39:28 +0800
commit3ce2865f93d42f4721d58088dd6ab1dac06ea85b (patch)
treed24746c80071fb3daad2215254878d6235fccb52
parentae186e9a85c5fcb9fae262687819c55d1ff03727 (diff)
downloadglibc-3ce2865f93d42f4721d58088dd6ab1dac06ea85b.tar.gz
SH: Replace <endian.h> usage with pre-processor macros.
Follow-up to f8887d0a5feda97244613135822b0439addc2b1f.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/sh/memcpy.S9
-rw-r--r--sysdeps/sh/strlen.S5
3 files changed, 12 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 25c1da29f3..0f558fe37c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-04-25 Chung-Lin Tang <cltang@codesourcery.com>
+
+ * sysdeps/sh/memcpy.S: Remove include of endian.h, change
+ preprocessor endian tests to '#ifdef __BIG_ENDIAN__'.
+ * sysdeps/sh/strlen.S: Likewise.
+
2012-04-24 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/fork.S: Remove file.
diff --git a/sysdeps/sh/memcpy.S b/sysdeps/sh/memcpy.S
index 0b9ed6baa5..b4d90bb772 100644
--- a/sysdeps/sh/memcpy.S
+++ b/sysdeps/sh/memcpy.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
Optimized by Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
@@ -18,7 +18,6 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
-#include <endian.h>
/* void *memcpy(void *dst, const void *src, size_t n);
No overlap between the memory of DST and of SRC are assumed. */
@@ -49,7 +48,7 @@ L_wordalign:
mov.w @r0+,r1 /* Copy one word. */
add #-2,r6
-#if __BYTE_ORDER == __BIG_ENDIAN
+#ifdef __BIG_ENDIAN__
add #1,r4
mov.b r1,@r4
shlr8 r1
@@ -98,7 +97,7 @@ L_copydest1_or_3_loop:
mov.l @r5+,r0 /* Read first longword. */
dt r7
mov.l @r5+,r1 /* Read second longword. */
-#if __BYTE_ORDER == __BIG_ENDIAN
+#ifdef __BIG_ENDIAN__
/* Write first longword as byte, word, byte. */
mov.b r0,@(4,r4)
shlr8 r0
@@ -140,7 +139,7 @@ L_copydest2_loop:
mov.l @r5+,r0
dt r7
mov.l @r5+,r1
-#if __BYTE_ORDER == __BIG_ENDIAN
+#ifdef __BIG_ENDIAN__
mov.w r0,@(2,r4)
shlr16 r0
mov.w r0,@r4
diff --git a/sysdeps/sh/strlen.S b/sysdeps/sh/strlen.S
index 93f7dd8f76..65aec76097 100644
--- a/sysdeps/sh/strlen.S
+++ b/sysdeps/sh/strlen.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
@@ -17,7 +17,6 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
-#include <endian.h>
/* size_t strlen (const char *s) */
@@ -58,7 +57,7 @@ ENTRY(strlen)
add #4, r2
add #-4, r2
-#if __BYTE_ORDER == __BIG_ENDIAN
+#ifdef __BIG_ENDIAN__
swap.b r1, r1
swap.w r1, r1
swap.b r1, r1