summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/i960/README
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-06-18 01:10:28 +0000
committerEric Andersen <andersen@codepoet.org>2002-06-18 01:10:28 +0000
commitb34e006872e0c6c6f851ca36eda46d01e3ca0e6b (patch)
tree8206ca5739109e6482643cbea01975601c39b3b0 /libc/sysdeps/linux/i960/README
parent33a9fd74f98749da869c8d649f0a148768205867 (diff)
Patch from Martin Proulx <mproulx@okiok.com> to support
the i960 architecture.
Diffstat (limited to 'libc/sysdeps/linux/i960/README')
-rw-r--r--libc/sysdeps/linux/i960/README72
1 files changed, 72 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/i960/README b/libc/sysdeps/linux/i960/README
new file mode 100644
index 000000000..db4567a55
--- /dev/null
+++ b/libc/sysdeps/linux/i960/README
@@ -0,0 +1,72 @@
+Overview
+---------------------------------------------------------------------------
+
+This is the README file for the i960 support in uClibc.
+
+This has been tested with gcc 2.95.3 and i960-intel-coff target.
+
+There is no support at all to compile with the intel CTOOLS, as this would
+have required too many changes to uClibc. So you won't see any support
+in the asm files for position independent data or code.
+
+Quirks needed
+---------------------------------------------------------------------------
+
+prepended underscore
+--------------------
+
+As the i960 compiler prepends an underscore to symbols, it is critical that
+the Config file define C_SYMBOL_PREFIX as
+ C_SYMBOL_PREFIX = _
+to make sure that underscores are applied to symbol names when needed.
+
+
+__va_copy in va-i960.h
+----------------------
+
+When compiled with gcc-2.95, the __va_copy macro in va-i960.h seems to be broken
+and it has to be modified in order for uClibc to compile correctly.
+
+Change:
+
+#define __va_copy(dest, src) (dest) = (src)
+
+To:
+
+#define __va_copy(dest, src) dest[0] = src[0]; dest[1] = src[1]
+
+
+gcc integration
+---------------------------------------------------------------------------
+
+I'm personnaly not using the gcc-uClibc wrapper.
+I've preferred modifying the specs file so that the i960-intel-coff compiler
+directly compiles with uClibc.
+
+First, compile and install the standard i960-intel-coff compiler, which is meant
+to be used with newlib.
+
+Then, compile uClibc, installing over the newlib include files and libraries.
+
+Update the specs file with the included specs.uclinux.gcc-2.95.i960-intel-coff
+
+This specs file always build relocatable objects, which has the disadvantage
+of not letting you know if the link is missing any symbols.
+
+coff2flt
+---------------------------------------------------------------------------
+
+In order to run the executables under uClinux, fully relocatable binaries
+need to be built using coff2flt.
+
+We have built a working coff2flt that works with the i960 and the current version
+of binfmt_flat with uClinux.
+
+Contact Martin Proulx <mproulx at okiok.com> for further informations.
+
+
+
+
+
+Check:
+ _mmap.S: besoin???