diff options
author | Joern Rennecke <joern.rennecke@embecosm.com> | 2009-03-10 00:07:41 +0300 |
---|---|---|
committer | Joern Rennecke <joern.rennecke@embecosm.com> | 2009-03-10 00:07:41 +0300 |
commit | 29d73b431a1f8beb39ff57addd457e9ad3df1ccd (patch) | |
tree | f7130da33decc049cc928f2dc80d7d325ca2705c | |
parent | 3a6e4af41b4a0a08e91153fa6e2f5cfd52c399e1 (diff) |
Check in ARCompact simulator. A valid configuration is arc-elf.arc-sim-20090309
This is not quite finished and has most likely a few files that are
obsolete & not used, but it's good enough to run gcc regression tests.
-rw-r--r-- | MANIFEST | 249 | ||||
-rw-r--r-- | include/elf/ChangeLog.codito | 8 | ||||
-rw-r--r-- | newlib/ChangeLog.ARC | 3 | ||||
-rw-r--r-- | newlib/libc/sys/arc/sys/fcntl.h | 191 |
4 files changed, 451 insertions, 0 deletions
diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 000000000..1e876de3b --- /dev/null +++ b/MANIFEST @@ -0,0 +1,249 @@ +By codito + added files: + gas/testsuite/gas/arc/general_a700.d + gas/testsuite/gas/arc/dsp1.d + gas/testsuite/gas/arc/general_a700.s + gas/testsuite/gas/arc/dsp1.s + gas/testsuite/gas/arc/ld_arc700.s + gas/testsuite/gas/arc/sub_s.d + gas/testsuite/gas/arc/lsl_s.d + gas/testsuite/gas/arc/gen_simd.d + gas/testsuite/gas/arc/sub_s.s + gas/testsuite/gas/arc/lsl_s.s + gas/testsuite/gas/arc/prefetch.d + gas/testsuite/gas/arc/gen_simd.s + gas/testsuite/gas/arc/reloctest.d + gas/testsuite/gas/arc/arc700.exp + gas/testsuite/gas/arc/dsp2.d + gas/testsuite/gas/arc/prefetch.s + gas/testsuite/gas/arc/reloctest.s + gas/testsuite/gas/arc/dsp2.s + gas/testsuite/gas/arc/mpy_a700.d + gas/testsuite/gas/arc/ex_arc700.s + gas/testsuite/gas/arc/mpy_a700.s + gas/config/extlib + gas/config/extlib/configure + gas/config/extlib/Makefile.in + gas/config/extlib/arcsimd.s + gas/config/extlib/configure.in + gas/config/extlib/arcextlib.s + include/elf/ChangeLog.codito + libgloss/arc/syscall.h (delivered as linux/include/asm-arcnommu/unistd.h) + ld/emultempl/arclinux.em + ld/configdoc.texi + ld/scripttempl/elfarc.sc + ld/scripttempl/arclinux.sc + ld/emulparams/arclinux.sh + md5.sum + opcodes/ChangeLog.codito + opcodes/arcompact-dis.c + changed files: + bfd/archures.c (merged) + bfd/bfd-in2.h (merged/regenerated) + bfd/config.bfd + bfd/configure.in + bfd/cpu-arc.c (merged) + bfd/elf32-arc.c + bfd/reloc.c + bfd/cpu-arc.c + Makefile.in + gas/configure.tgt (patch was originally in configure.in) + gas/doc/c-arc.texi + gas/doc/as.texinfo + gas/configure.in + gas/testsuite/gas/arc/swi.d + gas/testsuite/gas/arc/sbc.d + gas/testsuite/gas/arc/sleep.d + gas/testsuite/gas/arc/brk.d + gas/testsuite/gas/arc/swi.s + gas/testsuite/gas/arc/rrc.d + gas/testsuite/gas/arc/bic.d + gas/testsuite/gas/arc/extb.d + gas/testsuite/gas/arc/arc.exp + gas/testsuite/gas/arc/asl.d + gas/testsuite/gas/arc/asr.d + gas/testsuite/gas/arc/sexw.d + gas/testsuite/gas/arc/adc.d + gas/testsuite/gas/arc/lsr.d + gas/testsuite/gas/arc/mov.d + gas/testsuite/gas/arc/ror.d + gas/testsuite/gas/arc/and.d + gas/testsuite/gas/arc/xor.d + gas/testsuite/gas/arc/rlc.d + gas/testsuite/gas/arc/or.d + gas/testsuite/gas/arc/sexb.d + gas/testsuite/gas/arc/jl.d + gas/testsuite/gas/arc/extw.d + gas/testsuite/gas/arc/add.d + gas/testsuite/gas/arc/sub.d + gas/struc-symbol.h + gas/config/tc-arc.c + gas/config/tc-arc.h + gas/Makefile.am + include/dis-asm.h + include/elf/arc.h + include/elf/common.h (adapted) + include/opcode/arc.h + ld/configure.in + ld/emulparams/arcelf.sh + ld/configure.tgt + ld/Makefile.am + binutils/configure.in + binutils/testsuite/binutils-all/objdump.exp + binutils/readelf.c + opcodes/configure.in + opcodes/arc-dis.c + opcodes/arc-dis.h + opcodes/arc-opc.c + opcodes/Makefile.am + opcodes/arc-ext.c + opcodes/arc-ext.h + gdb/doc/Makefile.in + gdb/doc/gdb.texinfo + gdb/remote.c + gdb/testsuite/gdb.base/float.exp + gdb/testsuite/lib/gdbserver-support.exp + gdb/testsuite/gdb.asm/asm-source.exp + gdb/dwarf2read.c + gdb/dwarf2-frame.c + gdb/configure.tgt + gdb/version.in + gdb/gdbserver/Makefile.in + gdb/gdbserver/configure.srv + gdb/gdbserver/proc-service.c + gdb/gdbserver/remote-utils.c + gdb/Makefile.in + +By ARC employees: + added files: + cgen/cpu/ARCompact.cpu + cgen/cpu/arc.opc + cgen/cpu/arc.cpu + cpu/arc.opc + cpu/sh-sim.cpu + cpu/arc.cpu + cpu/ARCompact.cpu + gas/ChangeLog.ARC + gdb/config/arc/arc.mt + include/gdb/target-io/arc.h + ld/ChangeLog.ARC + opcodes/arc-opc.h + opcodes/arc-opinst.c + opcodes/arc-desc.c + opcodes/arc-desc.h + opcodes/arc-ibld.c + opcodes/arc-asm.c + sim/arc/ChangeLog + sim/arc/configure.ac + sim/arc/mloop5.in + sim/arc/mloop6.in + sim/arc/mloop7.in + sim/arc/arc-sim.h + sim/arc/Makefile.in + sim/arc/tconfig.in + sim/arc/sim-main.h + sim/arc/devices.c + sim/arc/sim-if.c + sim/arc/arc5.c + sim/arc/arc6.c + sim/arc/arc7.c + sim/arc/config.in + sim/arc/configure + sim/arc/arch.h + sim/arc/arch.c + sim/arc/decode5.h + sim/arc/decode6.h + sim/arc/decode7.h + sim/arc/decode5.c + sim/arc/decode6.c + sim/arc/decode7.c + sim/arc/sem5-switch.c + sim/arc/sem6-switch.c + sim/arc/sem7-switch.c + sim/arc/sem5.c + sim/arc/sem6.c + sim/arc/sem7.c + sim/arc/cpu5.h + sim/arc/cpu6.h + sim/arc/cpu7.h + sim/arc/cpuall.h + sim/arc/cpu5.c + sim/arc/cpu6.c + sim/arc/cpu7.c + sim/arc/model5.c + sim/arc/model6.c + sim/arc/model7.c + sim/arc/traps.c + sim/common/ChangeLog.ARC + newlib/ChangeLog.ARC + newlib/libc/sys/arc/sys/fcntl.h + replaced files: + opcodes/arc-dis.c + opcodes/arc-opc.c + changed files: + bfd/configure + bfd/elf32-arc.c + bfd/libbfd.h + bfd/bfd-in2.h + cgen/ChangeLog + cgen/read.scm + cgen/sim-cpu.scm + cgen/utils-sim.scm + cgen/cpu/ip2k.opc + cgen/cpu/sparc.opc + cgen/cpu/xc16x.opc + cgen/cpu/fr30.opc + cgen/cpu/mep.opc + cgen/cpu/m32r.opc + cgen/cpu/i960.opc + cgen/cpu/sh.opc + cgen/cpu/iq2000.opc + cgen/cpu/openrisc.opc + cgen/cpu/xstormy16.opc + cgen/opc-itab.scm + cpu/ChangeLog + gas/config/tc-arc.c + gas/config/tc-arc.h + gas/configure + gas/Makefile.in + gas/doc/c-arc.texi + gas/as.c + gas/symbols.c + gas/symbols.h + gdb/ChangeLog + gdb/configure.tgt + include/ChangeLog + include/dis-asm.h + include/gdb/callback.h + include/gdb/ChangeLog + include/opcode/arc.h + include/opcode/cgen.h + ld/ChangeLog + ld/scripttempl/arclinux.sc + ld/scripttempl/elfarc.sc + ld/emulparams/arclinux.sh + ld/Makefile.am + ld/Makefile.in + libgloss/ChangeLog + opcodes/arc-dis.h + opcodes/arc-dis.c + opcodes/arc-ext.h + opcodes/arc-ext.c + opcodes/arc-opc.c + opcodes/ChangeLog + opcodes/configure + opcodes/configure.in + opcodes/Makefile.am + opcodes/Makefile.in + opcodes/cgen-dis.c + sim/ChangeLog + sim/configure.ac + sim/configure + sim/common/callback.c + sim/common/cgen-trace.c + sim/common/ChangeLog + sim/common/gennltvals.sh + sim/common/gentvals.sh + sim/common/nltvals.def + sim/common/sim-utils.c + sim/common/syscall.c diff --git a/include/elf/ChangeLog.codito b/include/elf/ChangeLog.codito new file mode 100644 index 000000000..d30c7c44a --- /dev/null +++ b/include/elf/ChangeLog.codito @@ -0,0 +1,8 @@ +2005-05-15 Ramana Radhakrishnan <ramana@codito.com> + + * arc.h: Merge new ELF relocs. + +2005-05-12 Ramana Radhakrishnan <ramana@codito.com> + + * dwarf2.h: Add Metaware specific CFA info. + diff --git a/newlib/ChangeLog.ARC b/newlib/ChangeLog.ARC new file mode 100644 index 000000000..f6ab32a80 --- /dev/null +++ b/newlib/ChangeLog.ARC @@ -0,0 +1,3 @@ +2007-09-17 J"orn Rennecke <joern.rennecke@arc.com> + + * libc/sys/arc/sys/fcntl.h: New file. diff --git a/newlib/libc/sys/arc/sys/fcntl.h b/newlib/libc/sys/arc/sys/fcntl.h new file mode 100644 index 000000000..d65501774 --- /dev/null +++ b/newlib/libc/sys/arc/sys/fcntl.h @@ -0,0 +1,191 @@ +/* sys/fcntl.h for arc */ + +/* This is basically the same as the default version, except that some of + the _F* values are different for compatibility with linux/uclibc . */ + +#ifndef _FCNTL_ +#ifdef __cplusplus +extern "C" { +#endif +#define _FCNTL_ +#include <_ansi.h> +#define _FOPEN (-1) /* from sys/file.h, kernel use only */ +#define _FREAD 0x0001 /* read enabled */ +#define _FWRITE 0x0002 /* write enabled */ +/* The following nine values have been changed for uclibc compatibility. */ +#define _FAPPEND 0x0400 /* append (writes guaranteed at the end) */ +#define _FASYNC 0x2000 /* signal pgrp when data ready */ +#define _FCREAT 0x0040 /* open with file create */ +#define _FTRUNC 0x0200 /* open with truncation */ +#define _FEXCL 0x0080 /* error on open if file exists */ +#define _FSYNC 0x1000 /* do all writes synchronously */ +#define _FNONBLOCK 0x0800 /* non blocking I/O (POSIX style) */ +#define _FNDELAY _FNONBLOCK /* non blocking I/O (4.2 style) */ +#define _FNOCTTY 0x0100 /* don't assign a ctty on this open */ +/* The following five values have no uclibc equivalent; the last three of + these had to have their values changed to avoid collisions with the + above values, though. */ +#define _FMARK 0x0010 /* internal; mark during gc() */ +#define _FDEFER 0x0020 /* internal; defer for next gc pass */ +#define _FSHLOCK 0x4000 /* BSD flock() shared lock present */ +#define _FEXLOCK 0x8000 /* BSD flock() exclusive lock present */ +#define _FNBIO 0x0008 /* non blocking I/O (sys5 style) */ + +#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR) + +/* + * Flag values for open(2) and fcntl(2) + * The kernel adds 1 to the open modes to turn it into some + * combination of FREAD and FWRITE. + */ +#define O_RDONLY 0 /* +1 == FREAD */ +#define O_WRONLY 1 /* +1 == FWRITE */ +#define O_RDWR 2 /* +1 == FREAD|FWRITE */ +#define O_APPEND _FAPPEND +#define O_CREAT _FCREAT +#define O_TRUNC _FTRUNC +#define O_EXCL _FEXCL +#define O_SYNC _FSYNC +/* O_NDELAY _FNDELAY set in include/fcntl.h */ +/* O_NDELAY _FNBIO set in include/fcntl.h */ +#define O_NONBLOCK _FNONBLOCK +#define O_NOCTTY _FNOCTTY +/* For machines which care - */ +#if defined (_WIN32) || defined (__CYGWIN__) +#define _FBINARY 0x10000 +#define _FTEXT 0x20000 +#define _FNOINHERIT 0x40000 + +#define O_BINARY _FBINARY +#define O_TEXT _FTEXT +#define O_NOINHERIT _FNOINHERIT + +/* The windows header files define versions with a leading underscore. */ +#define _O_RDONLY O_RDONLY +#define _O_WRONLY O_WRONLY +#define _O_RDWR O_RDWR +#define _O_APPEND O_APPEND +#define _O_CREAT O_CREAT +#define _O_TRUNC O_TRUNC +#define _O_EXCL O_EXCL +#define _O_TEXT O_TEXT +#define _O_BINARY O_BINARY +#define _O_RAW O_BINARY +#define _O_NOINHERIT O_NOINHERIT +#endif + +#ifndef _POSIX_SOURCE + +/* + * Flags that work for fcntl(fd, F_SETFL, FXXXX) + */ +#define FAPPEND _FAPPEND +#define FSYNC _FSYNC +#define FASYNC _FASYNC +#define FNBIO _FNBIO +#define FNONBIO _FNONBLOCK /* XXX fix to be NONBLOCK everywhere */ +#define FNDELAY _FNDELAY + +/* + * Flags that are disallowed for fcntl's (FCNTLCANT); + * used for opens, internal state, or locking. + */ +#define FREAD _FREAD +#define FWRITE _FWRITE +#define FMARK _FMARK +#define FDEFER _FDEFER +#define FSHLOCK _FSHLOCK +#define FEXLOCK _FEXLOCK + +/* + * The rest of the flags, used only for opens + */ +#define FOPEN _FOPEN +#define FCREAT _FCREAT +#define FTRUNC _FTRUNC +#define FEXCL _FEXCL +#define FNOCTTY _FNOCTTY + +#endif /* !_POSIX_SOURCE */ + +/* XXX close on exec request; must match UF_EXCLOSE in user.h */ +#define FD_CLOEXEC 1 /* posix */ + +/* fcntl(2) requests */ +#define F_DUPFD 0 /* Duplicate fildes */ +#define F_GETFD 1 /* Get fildes flags (close on exec) */ +#define F_SETFD 2 /* Set fildes flags (close on exec) */ +#define F_GETFL 3 /* Get file flags */ +#define F_SETFL 4 /* Set file flags */ +#ifndef _POSIX_SOURCE +#define F_GETOWN 5 /* Get owner - for ASYNC */ +#define F_SETOWN 6 /* Set owner - for ASYNC */ +#endif /* !_POSIX_SOURCE */ +#define F_GETLK 7 /* Get record-locking information */ +#define F_SETLK 8 /* Set or Clear a record-lock (Non-Blocking) */ +#define F_SETLKW 9 /* Set or Clear a record-lock (Blocking) */ +#ifndef _POSIX_SOURCE +#define F_RGETLK 10 /* Test a remote lock to see if it is blocked */ +#define F_RSETLK 11 /* Set or unlock a remote lock */ +#define F_CNVT 12 /* Convert a fhandle to an open fd */ +#define F_RSETLKW 13 /* Set or Clear remote record-lock(Blocking) */ +#endif /* !_POSIX_SOURCE */ + +/* fcntl(2) flags (l_type field of flock structure) */ +#define F_RDLCK 1 /* read lock */ +#define F_WRLCK 2 /* write lock */ +#define F_UNLCK 3 /* remove lock(s) */ +#ifndef _POSIX_SOURCE +#define F_UNLKSYS 4 /* remove remote locks for a given system */ +#endif /* !_POSIX_SOURCE */ + +/*#include <sys/stdtypes.h>*/ + +#ifndef __CYGWIN__ +/* file segment locking set data type - information passed to system by user */ +struct flock { + short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */ + short l_whence; /* flag to choose starting offset */ + long l_start; /* relative offset, in bytes */ + long l_len; /* length, in bytes; 0 means lock to EOF */ + short l_pid; /* returned with F_GETLK */ + short l_xxx; /* reserved for future use */ +}; +#endif /* __CYGWIN__ */ + +#ifndef _POSIX_SOURCE +/* extended file segment locking set data type */ +struct eflock { + short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */ + short l_whence; /* flag to choose starting offset */ + long l_start; /* relative offset, in bytes */ + long l_len; /* length, in bytes; 0 means lock to EOF */ + short l_pid; /* returned with F_GETLK */ + short l_xxx; /* reserved for future use */ + long l_rpid; /* Remote process id wanting this lock */ + long l_rsys; /* Remote system id wanting this lock */ +}; +#endif /* !_POSIX_SOURCE */ + + +#include <sys/types.h> +#include <sys/stat.h> /* sigh. for the mode bits for open/creat */ + +extern int open _PARAMS ((const char *, int, ...)); +extern int creat _PARAMS ((const char *, mode_t)); +extern int fcntl _PARAMS ((int, int, ...)); + +/* Provide _<systemcall> prototypes for functions provided by some versions + of newlib. */ +#ifdef _COMPILING_NEWLIB +extern int _open _PARAMS ((const char *, int, ...)); +extern int _fcntl _PARAMS ((int, int, ...)); +#ifdef __LARGE64_FILES +extern int _open64 _PARAMS ((const char *, int, ...)); +#endif +#endif + +#ifdef __cplusplus +} +#endif +#endif /* !_FCNTL_ */ |