This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[newlib][ARM][PATCH 2/3] Use machine header file for endianness configuration.


newlib/ChangeLog:
2015-07-28  Andre Vieira  <andre.simoesdiasvieira@arm.com>

  * libc/sys/arm/sys/param.h (BIG_ENDIAN, LITTLE_ENDIAN): Moved
  to machine/endian.h.
  * libc/machine/arm/machine/param.h (BYTE_ORDER): Idem.
  * libc/machine/arm/machine/endian.h: New.
From ca6efccda91bc6b620b7d96a466b0f1e2f02cfeb Mon Sep 17 00:00:00 2001
From: Andre Simoes Dias Vieira <andsim01@arm.com>
Date: Tue, 28 Jul 2015 12:16:20 +0100
Subject: [PATCH 2/2] Move endianness configuration to machine/endian.h

---
 newlib/libc/machine/arm/machine/endian.h | 39 ++++++++++++++++++++++++++++++++
 newlib/libc/machine/arm/machine/param.h  |  6 -----
 newlib/libc/sys/arm/sys/param.h          | 10 +-------
 3 files changed, 40 insertions(+), 15 deletions(-)
 create mode 100644 newlib/libc/machine/arm/machine/endian.h

diff --git a/newlib/libc/machine/arm/machine/endian.h b/newlib/libc/machine/arm/machine/endian.h
new file mode 100644
index 0000000000000000000000000000000000000000..a7506aea015f789755fd8cc454258ee10796fda6
--- /dev/null
+++ b/newlib/libc/machine/arm/machine/endian.h
@@ -0,0 +1,40 @@
+/* ARM configuration file.
+   Copyright (c) 2015 ARM Ltd.  All rights reserved.
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+   1. Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+   2. Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+   3. The name of the company may not be used to endorse or promote
+      products derived from this software without specific prior written
+      permission.
+
+   THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED
+   WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+   MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+   IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+   TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
+
+#ifndef _MACHINE_ENDIAN_H
+#define _MACHINE_ENDIAN_H
+
+/*  Code relocated from libc/sys/arm/sys/param.h.  */
+#define BIG_ENDIAN      4321
+#define LITTLE_ENDIAN   1234
+
+#ifdef __ARMEB__
+#define BYTE_ORDER BIG_ENDIAN
+#else
+#define BYTE_ORDER LITTLE_ENDIAN
+#endif
+
+#endif
diff --git a/newlib/libc/machine/arm/machine/param.h b/newlib/libc/machine/arm/machine/param.h
index 595294cf31bf18e59f57e7060b3dc57c794e35a0..513f7b0b07425c22413358b06e6fc8e10e4aecdd 100644
--- a/newlib/libc/machine/arm/machine/param.h
+++ b/newlib/libc/machine/arm/machine/param.h
@@ -5,10 +5,4 @@
 
 # define HZ (100)
 
-#ifdef __ARMEB__
-#define BYTE_ORDER BIG_ENDIAN
-#else
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
 #endif
diff --git a/newlib/libc/sys/arm/sys/param.h b/newlib/libc/sys/arm/sys/param.h
index 622c371972ab3c9dbb93ea5c51323a593e2a171a..83e46c04427267725d8aa6b58ac3ff68b5ec6679 100644
--- a/newlib/libc/sys/arm/sys/param.h
+++ b/newlib/libc/sys/arm/sys/param.h
@@ -4,6 +4,7 @@
 # define _SYS_PARAM_H
 
 #include <machine/param.h>
+#include <machine/endian.h>
 
 #ifndef HZ
 # define HZ (60)
@@ -15,13 +16,4 @@
 # define PATHSIZE (1024)
 #endif
 
-#define BIG_ENDIAN      4321
-#define LITTLE_ENDIAN   1234
-
-#ifdef __ARMEB__
-#define BYTE_ORDER BIG_ENDIAN
-#else
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
 #endif
-- 
1.9.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]