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] | |
Hi, on behalf of Controls and Data Services, AdaCore would like to contribute a port of Newlib to the Visium. This is a 32-bit RISC architecture with an Extended Arithmetic Module implementing some 64-bit operations and an FPU designed for embedded systems. The binutils and compilers port have already been contributed and the ultimate goal is to contribute a port of the entire toolchain with simulator and debugger. This is a very basic port but it contains a libsim.a that implements support for I/O in the simulator. It is under the standard BSD license, modulo a couple of files (libgloss/visium/io.h and libgloss/visium/io-gdb.c) that are copied from the m68k port: ? libgloss/visium/Makefile.in ? libgloss/visium/_exit.c ? libgloss/visium/aclocal.m4 ? libgloss/visium/configure ? libgloss/visium/configure.in ? libgloss/visium/crt0.S ? libgloss/visium/gettod.c ? libgloss/visium/io-gdb.c ? libgloss/visium/io-stubs.c ? libgloss/visium/io.h ? libgloss/visium/sbrk.c ? libgloss/visium/serial-inbyte.c ? libgloss/visium/serial-outbyte.c ? libgloss/visium/syscall.h ? libgloss/visium/syscalls.c ? newlib/libc/machine/visium/Makefile.am ? newlib/libc/machine/visium/Makefile.in ? newlib/libc/machine/visium/aclocal.m4 ? newlib/libc/machine/visium/configure ? newlib/libc/machine/visium/configure.in ? newlib/libc/machine/visium/memcpy.c ? newlib/libc/machine/visium/memcpy.h ? newlib/libc/machine/visium/memmove.c ? newlib/libc/machine/visium/memset.c ? newlib/libc/machine/visium/memset.h ? newlib/libc/machine/visium/setjmp.S I have write access to the CVS repository. 2015-01-19 Eric Botcazou <ebotcazou@adacore.com> * COPYING.LIBGLOSS: Add Controls and Data Services copyright. * COPYING.NEWLIB: Likewise. libgloss/ 2015-01-19 Eric Botcazou <ebotcazou@adacore.com> * configure.in: Add Visium support. * configure: Regenerate. * libgloss/visium/: New directory. newlib/ 2015-01-19 Eric Botcazou <ebotcazou@adacore.com> * configure.host: Add Visium support. * libc/machine/configure.in: Likewise. * libc/machine/configure: Regenerate. * libc/machine/visium/: New directory. * libc/include/machine/setjmp.h (_JBLEN): Define for Visium. * libc/include/machine/ieeefp.h (__IEEE_BIG_ENDIAN): Likewise. * libc/include/machine/time.h (_CLOCKS_PER_SEC_): Likewise. -- Eric Botcazou
Index: COPYING.LIBGLOSS
===================================================================
RCS file: /cvs/src/src/COPYING.LIBGLOSS,v
retrieving revision 1.19
diff -u -p -r1.19 COPYING.LIBGLOSS
--- COPYING.LIBGLOSS 7 Jan 2013 21:39:26 -0000 1.19
+++ COPYING.LIBGLOSS 19 Jan 2015 20:22:13 -0000
@@ -352,3 +352,31 @@ CAUSED AND ON ANY THEORY OF LIABILITY, W
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.
+
+(18) - Rolls-Royce Controls and Data Services Limited (visium-* targets)
+
+Copyright (c) 2015 Rolls-Royce Controls and Data Services Limited.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * 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.
+ * Neither the name of Rolls-Royce Controls and Data Services Limited nor
+ the names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT HOLDER OR CONTRIBUTORS 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.
Index: COPYING.NEWLIB
===================================================================
RCS file: /cvs/src/src/COPYING.NEWLIB,v
retrieving revision 1.34
diff -u -p -r1.34 COPYING.NEWLIB
--- COPYING.NEWLIB 4 Apr 2014 21:52:07 -0000 1.34
+++ COPYING.NEWLIB 19 Jan 2015 20:22:13 -0000
@@ -951,3 +951,30 @@ LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
+(42) - Rolls-Royce Controls and Data Services Limited (visium-* targets)
+
+Copyright (c) 2015 Rolls-Royce Controls and Data Services Limited.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * 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.
+ * Neither the name of Rolls-Royce Controls and Data Services Limited nor
+ the names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT HOLDER OR CONTRIBUTORS 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.
Index: libgloss/configure.in
===================================================================
RCS file: /cvs/src/src/libgloss/configure.in,v
retrieving revision 1.42
diff -u -p -r1.42 configure.in
--- libgloss/configure.in 15 Dec 2014 20:09:27 -0000 1.42
+++ libgloss/configure.in 19 Jan 2015 20:22:14 -0000
@@ -126,6 +126,10 @@ case "${target}" in
v850*-*-*)
AC_CONFIG_SUBDIRS([v850])
;;
+ visium-*-*)
+ AC_CONFIG_SUBDIRS([visium])
+ config_testsuite=false
+ ;;
xc16x-*-*)
AC_CONFIG_SUBDIRS([xc16x])
;;
Index: newlib/configure.host
===================================================================
RCS file: /cvs/src/src/newlib/configure.host,v
retrieving revision 1.140
diff -u -p -r1.140 configure.host
--- newlib/configure.host 15 Dec 2014 13:27:37 -0000 1.140
+++ newlib/configure.host 19 Jan 2015 20:22:14 -0000
@@ -286,6 +286,9 @@ case "${host_cpu}" in
machine_dir=v850
newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED "
;;
+ visium)
+ machine_dir=visium
+ ;;
w65*)
machine_dir=w65
;;
@@ -542,6 +545,9 @@ case "${host}" in
have_crt0="no"
fi
;;
+ visium-*-*)
+ sys_dir=
+ ;;
w65-*-*)
sys_dir=w65
;;
@@ -797,6 +803,10 @@ case "${host}" in
v850*-*-*)
syscall_dir=syscalls
;;
+ visium-*-*)
+ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DHAVE_SYSTEM -DMISSING_SYSCALL_NAMES"
+ syscall_dir=
+ ;;
w65-*-*)
syscall_dir=syscalls
newlib_cflags="${newlib_cflags} -DSMALL_DTOA -DSMALL_MEMORY"
Index: newlib/libc/include/machine/ieeefp.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/ieeefp.h,v
retrieving revision 1.58
diff -u -p -r1.58 ieeefp.h
--- newlib/libc/include/machine/ieeefp.h 17 Jul 2014 18:43:04 -0000 1.58
+++ newlib/libc/include/machine/ieeefp.h 19 Jan 2015 20:22:14 -0000
@@ -415,6 +415,10 @@
# endif
#endif
+#ifdef __VISIUM__
+#define __IEEE_BIG_ENDIAN
+#endif
+
#ifndef __IEEE_BIG_ENDIAN
#ifndef __IEEE_LITTLE_ENDIAN
#error Endianess not declared!!
Index: newlib/libc/include/machine/setjmp.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/setjmp.h,v
retrieving revision 1.57
diff -u -p -r1.57 setjmp.h
--- newlib/libc/include/machine/setjmp.h 15 Dec 2014 13:32:16 -0000 1.57
+++ newlib/libc/include/machine/setjmp.h 19 Jan 2015 20:22:14 -0000
@@ -338,6 +338,11 @@ _BEGIN_STD_C
#define _JBLEN 0x44
#endif
+#ifdef __VISIUM__
+/* All call-saved GP registers: r11-r19,r21,r22,r23. */
+#define _JBLEN 12
+#endif
+
#ifdef _JBLEN
#ifdef _JBTYPE
typedef _JBTYPE jmp_buf[_JBLEN];
Index: newlib/libc/include/machine/time.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/include/machine/time.h,v
retrieving revision 1.4
diff -u -p -r1.4 time.h
--- newlib/libc/include/machine/time.h 26 Sep 2012 20:06:47 -0000 1.4
+++ newlib/libc/include/machine/time.h 19 Jan 2015 20:22:14 -0000
@@ -3,11 +3,11 @@
#if defined(__rtems__)
#define _CLOCKS_PER_SEC_ sysconf(_SC_CLK_TCK)
-#else /* !__rtems__ */
-#if defined(__aarch64__) || defined(__arm__) || defined(__thumb__)
+#elif defined(__aarch64__) || defined(__arm__) || defined(__thumb__)
#define _CLOCKS_PER_SEC_ 100
+#elif defined (__VISIUM__)
+#define _CLOCKS_PER_SEC_ 1000000
#endif
-#endif /* !__rtems__ */
#ifdef __SPU__
#include <sys/types.h>
@@ -15,5 +15,3 @@ int nanosleep (const struct timespec *,
#endif
#endif /* _MACHTIME_H_ */
-
-
Index: newlib/libc/machine/configure.in
===================================================================
RCS file: /cvs/src/src/newlib/libc/machine/configure.in,v
retrieving revision 1.25
diff -u -p -r1.25 configure.in
--- newlib/libc/machine/configure.in 17 Jul 2014 18:43:04 -0000 1.25
+++ newlib/libc/machine/configure.in 19 Jan 2015 20:22:15 -0000
@@ -69,6 +69,7 @@ if test -n "${machine_dir}"; then
tic6x) AC_CONFIG_SUBDIRS(tic6x) ;;
tic80) AC_CONFIG_SUBDIRS(tic80) ;;
v850) AC_CONFIG_SUBDIRS(v850) ;;
+ visium) AC_CONFIG_SUBDIRS(visium) ;;
w65) AC_CONFIG_SUBDIRS(w65) ;;
x86_64) AC_CONFIG_SUBDIRS(x86_64) ;;
xc16x) AC_CONFIG_SUBDIRS(xc16x) ;;Attachment:
newlib_files.tar.gz
Description: application/compressed-tar
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |