diff options
author | cvs2svn <> | 2000-08-28 17:45:57 +0000 |
---|---|---|
committer | cvs2svn <> | 2000-08-28 17:45:57 +0000 |
commit | 8ad728f6884cab228c9d1cb2c48f305ec0afdf1a (patch) | |
tree | 94553fe0df19d986421b8954d4c90892c5597c3e /libgloss/mips | |
parent | e0b0f635738c6bfce3bffe916ebf41908b4620fb (diff) | |
download | newlib-gh.zip newlib-gh.tar.gz newlib-gh.tar.bz2 |
This commit was manufactured by cvs2svn to create branch 'gh'.gh
Sprout from master 2000-08-28 17:45:56 UTC Jeff Johnston <jjohnstn@redhat.com> ''
Delete:
COPYING
COPYING.LIB
ChangeLog
MAINTAINERS
Makefile.in
README
README-maintainer-mode
config-ml.in
config.guess
config.if
config.sub
config/ChangeLog
config/acinclude.m4
config/mh-a68bsd
config/mh-aix386
config/mh-apollo68
config/mh-armpic
config/mh-cxux
config/mh-cygwin
config/mh-decstation
config/mh-delta88
config/mh-dgux
config/mh-dgux386
config/mh-djgpp
config/mh-elfalphapic
config/mh-hp300
config/mh-hpux
config/mh-hpux8
config/mh-i370pic
config/mh-ia64pic
config/mh-interix
config/mh-irix4
config/mh-irix5
config/mh-irix6
config/mh-lynxos
config/mh-lynxrs6k
config/mh-m68kpic
config/mh-mingw32
config/mh-ncr3000
config/mh-ncrsvr43
config/mh-necv4
config/mh-openedition
config/mh-papic
config/mh-ppcpic
config/mh-riscos
config/mh-sco
config/mh-solaris
config/mh-sparcpic
config/mh-sun3
config/mh-sysv
config/mh-sysv4
config/mh-sysv5
config/mh-vaxult2
config/mh-x86pic
config/mpw-mh-mpw
config/mpw/ChangeLog
config/mpw/MoveIfChange
config/mpw/README
config/mpw/forward-include
config/mpw/g-mpw-make.sed
config/mpw/mpw-touch
config/mpw/mpw-true
config/mpw/null-command
config/mpw/open-brace
config/mpw/tr-7to8-src
config/mpw/true
config/mt-aix43
config/mt-armpic
config/mt-d30v
config/mt-elfalphapic
config/mt-i370pic
config/mt-ia64pic
config/mt-linux
config/mt-m68kpic
config/mt-netware
config/mt-ospace
config/mt-papic
config/mt-ppcpic
config/mt-sparcpic
config/mt-v810
config/mt-wince
config/mt-x86pic
configure
configure.in
djunpack.bat
etc/ChangeLog
etc/Makefile.in
etc/add-log.el
etc/add-log.vi
etc/configbuild.ein
etc/configbuild.fig
etc/configbuild.jin
etc/configbuild.tin
etc/configdev.ein
etc/configdev.fig
etc/configdev.jin
etc/configdev.tin
etc/configure
etc/configure.in
etc/configure.texi
etc/make-stds.texi
etc/standards.texi
include/COPYING
include/ChangeLog
include/MAINTAINERS
include/ansidecl.h
include/aout/ChangeLog
include/aout/adobe.h
include/aout/aout64.h
include/aout/ar.h
include/aout/dynix3.h
include/aout/encap.h
include/aout/host.h
include/aout/hp.h
include/aout/hp300hpux.h
include/aout/hppa.h
include/aout/ranlib.h
include/aout/reloc.h
include/aout/stab.def
include/aout/stab_gnu.h
include/aout/sun4.h
include/bfdlink.h
include/bin-bugs.h
include/bout.h
include/callback.h
include/coff/ChangeLog
include/coff/a29k.h
include/coff/alpha.h
include/coff/apollo.h
include/coff/arm.h
include/coff/aux-coff.h
include/coff/ecoff.h
include/coff/go32exe.h
include/coff/h8300.h
include/coff/h8500.h
include/coff/i386.h
include/coff/i860.h
include/coff/i960.h
include/coff/ia64.h
include/coff/internal.h
include/coff/m68k.h
include/coff/m88k.h
include/coff/mcore.h
include/coff/mips.h
include/coff/mipspe.h
include/coff/pe.h
include/coff/powerpc.h
include/coff/rs6000.h
include/coff/rs6k64.h
include/coff/sh.h
include/coff/sparc.h
include/coff/sym.h
include/coff/symconst.h
include/coff/ti.h
include/coff/tic30.h
include/coff/tic54x.h
include/coff/tic80.h
include/coff/w65.h
include/coff/we32k.h
include/coff/z8k.h
include/demangle.h
include/dis-asm.h
include/dyn-string.h
include/elf/ChangeLog
include/elf/alpha.h
include/elf/arc.h
include/elf/arm.h
include/elf/avr.h
include/elf/common.h
include/elf/cris.h
include/elf/d10v.h
include/elf/d30v.h
include/elf/dwarf.h
include/elf/dwarf2.h
include/elf/external.h
include/elf/fr30.h
include/elf/hppa.h
include/elf/i370.h
include/elf/i386.h
include/elf/i860.h
include/elf/i960.h
include/elf/ia64.h
include/elf/internal.h
include/elf/m32r.h
include/elf/m68hc11.h
include/elf/m68k.h
include/elf/mcore.h
include/elf/mips.h
include/elf/mn10200.h
include/elf/mn10300.h
include/elf/pj.h
include/elf/ppc.h
include/elf/reloc-macros.h
include/elf/sh.h
include/elf/sparc.h
include/elf/v850.h
include/filenames.h
include/floatformat.h
include/fnmatch.h
include/fopen-bin.h
include/fopen-same.h
include/fopen-vms.h
include/gdbm.h
include/getopt.h
include/hashtab.h
include/hp-symtab.h
include/ieee.h
include/libiberty.h
include/mpw/ChangeLog
include/mpw/README
include/mpw/dir.h
include/mpw/dirent.h
include/mpw/fcntl.h
include/mpw/grp.h
include/mpw/mpw.h
include/mpw/pwd.h
include/mpw/spin.h
include/mpw/stat.h
include/mpw/sys/file.h
include/mpw/sys/param.h
include/mpw/sys/resource.h
include/mpw/sys/stat.h
include/mpw/sys/time.h
include/mpw/sys/types.h
include/mpw/utime.h
include/mpw/varargs.h
include/nlm/ChangeLog
include/nlm/alpha-ext.h
include/nlm/common.h
include/nlm/external.h
include/nlm/i386-ext.h
include/nlm/internal.h
include/nlm/ppc-ext.h
include/nlm/sparc32-ext.h
include/oasys.h
include/objalloc.h
include/obstack.h
include/opcode/ChangeLog
include/opcode/a29k.h
include/opcode/alpha.h
include/opcode/arc.h
include/opcode/arm.h
include/opcode/avr.h
include/opcode/cgen.h
include/opcode/convex.h
include/opcode/cris.h
include/opcode/d10v.h
include/opcode/d30v.h
include/opcode/h8300.h
include/opcode/hppa.h
include/opcode/i370.h
include/opcode/i386.h
include/opcode/i860.h
include/opcode/i960.h
include/opcode/ia64.h
include/opcode/m68hc11.h
include/opcode/m68k.h
include/opcode/m88k.h
include/opcode/mips.h
include/opcode/mn10200.h
include/opcode/mn10300.h
include/opcode/np1.h
include/opcode/ns32k.h
include/opcode/pj.h
include/opcode/pn.h
include/opcode/ppc.h
include/opcode/pyr.h
include/opcode/sparc.h
include/opcode/tahoe.h
include/opcode/tic30.h
include/opcode/tic54x.h
include/opcode/tic80.h
include/opcode/v850.h
include/opcode/vax.h
include/os9k.h
include/partition.h
include/progress.h
include/regs/ChangeLog
include/remote-sim.h
include/sim-d10v.h
include/sort.h
include/splay-tree.h
include/symcat.h
install-sh
libgloss/ChangeLog
libgloss/Makefile.in
libgloss/README
libgloss/close.c
libgloss/config/default.mh
libgloss/config/default.mt
libgloss/config/dos.mh
libgloss/config/mips.mt
libgloss/config/mn10200.mt
libgloss/config/mn10300.mt
libgloss/config/ppc.mh
libgloss/configure
libgloss/configure.in
libgloss/d30v/Makefile.in
libgloss/d30v/configure
libgloss/d30v/configure.in
libgloss/d30v/crt0.S
libgloss/d30v/inbyte.c
libgloss/d30v/outbyte.c
libgloss/d30v/syscalls.c
libgloss/debug.c
libgloss/debug.h
libgloss/doc/Makefile.in
libgloss/doc/configure
libgloss/doc/configure.in
libgloss/doc/porting.texi
libgloss/fr30/Makefile.in
libgloss/fr30/configure
libgloss/fr30/configure.in
libgloss/fr30/crt0.s
libgloss/fr30/syscalls.c
libgloss/fstat.c
libgloss/getpid.c
libgloss/glue.h
libgloss/hp74x/Makefile.in
libgloss/hp74x/README
libgloss/hp74x/checksum.c
libgloss/hp74x/configure
libgloss/hp74x/configure.in
libgloss/hp74x/crt0.s
libgloss/hp74x/debugger.h
libgloss/hp74x/debugger.s
libgloss/hp74x/diagnose.h
libgloss/hp74x/hppa-defs.h
libgloss/hp74x/hppa.ld
libgloss/hp74x/io.c
libgloss/hp74x/iva_table.h
libgloss/hp74x/iva_table.s
libgloss/hp74x/pa_stub.c
libgloss/hp74x/test.c
libgloss/i386/Makefile.in
libgloss/i386/configure
libgloss/i386/configure.in
libgloss/i386/cygmon-crt0.S
libgloss/i386/cygmon-gmon.c
libgloss/i386/cygmon-gmon.h
libgloss/i386/cygmon-salib.c
libgloss/i386/cygmon-syscall.h
libgloss/i386/cygmon.ld
libgloss/i960/Makefile.in
libgloss/i960/asm.h
libgloss/i960/configure
libgloss/i960/configure.in
libgloss/i960/crt0.c
libgloss/i960/mon-read.c
libgloss/i960/mon-syscalls.S
libgloss/i960/mon-write.c
libgloss/i960/mon960.c
libgloss/i960/mon960.ld
libgloss/i960/syscall.h
libgloss/isatty.c
libgloss/kill.c
libgloss/libnosys/Makefile.in
libgloss/libnosys/acconfig.h
libgloss/libnosys/close.c
libgloss/libnosys/config.h.in
libgloss/libnosys/configure
libgloss/libnosys/configure.in
libgloss/libnosys/environ.c
libgloss/libnosys/execve.c
libgloss/libnosys/fork.c
libgloss/libnosys/fstat.c
libgloss/libnosys/getpid.c
libgloss/libnosys/gettod.c
libgloss/libnosys/isatty.c
libgloss/libnosys/kill.c
libgloss/libnosys/link.c
libgloss/libnosys/lseek.c
libgloss/libnosys/open.c
libgloss/libnosys/read.c
libgloss/libnosys/sbrk.c
libgloss/libnosys/stat.c
libgloss/libnosys/times.c
libgloss/libnosys/unlink.c
libgloss/libnosys/wait.c
libgloss/libnosys/warning.h
libgloss/libnosys/write.c
libgloss/lseek.c
libgloss/m32r/Makefile.in
libgloss/m32r/chmod.c
libgloss/m32r/close.c
libgloss/m32r/configure
libgloss/m32r/configure.in
libgloss/m32r/crt0.S
libgloss/m32r/eit.h
libgloss/m32r/eva-stub.ld
libgloss/m32r/eva.ld
libgloss/m32r/exit.c
libgloss/m32r/fstat.c
libgloss/m32r/getpid.c
libgloss/m32r/isatty.c
libgloss/m32r/kill.c
libgloss/m32r/lseek.c
libgloss/m32r/m32r-lib.c
libgloss/m32r/mon.specs
libgloss/m32r/open.c
libgloss/m32r/raise.c
libgloss/m32r/read.c
libgloss/m32r/sbrk.c
libgloss/m32r/stat.c
libgloss/m32r/trap0.S
libgloss/m32r/trapmon0.c
libgloss/m32r/unlink.c
libgloss/m32r/utime.c
libgloss/m32r/write.c
libgloss/m68k/Makefile.in
libgloss/m68k/README
libgloss/m68k/asm.h
libgloss/m68k/bcc.ld
libgloss/m68k/configure
libgloss/m68k/configure.in
libgloss/m68k/cpu32bug.S
libgloss/m68k/cpu32bug.h
libgloss/m68k/crt0.S
libgloss/m68k/dbug-exit.S
libgloss/m68k/dbug-inbyte.S
libgloss/m68k/dbug-outbyte.S
libgloss/m68k/dtor.C
libgloss/m68k/idp-inbyte.c
libgloss/m68k/idp-outbyte.c
libgloss/m68k/idp.ld
libgloss/m68k/leds.c
libgloss/m68k/leds.h
libgloss/m68k/mc68681reg.h
libgloss/m68k/mc68ec.c
libgloss/m68k/mvme-stub.c
libgloss/m68k/mvme.S
libgloss/m68k/mvme135-asm.S
libgloss/m68k/mvme135.ld
libgloss/m68k/mvme162.ld
libgloss/m68k/mvme162lx-asm.S
libgloss/m68k/sbc5204.ld
libgloss/m68k/sbc5206.ld
libgloss/m68k/test.c
libgloss/mcore/Makefile.in
libgloss/mcore/close.c
libgloss/mcore/cmb-exit.c
libgloss/mcore/cmb-inbyte.c
libgloss/mcore/cmb-outbyte.c
libgloss/mcore/configure
libgloss/mcore/configure.in
libgloss/mcore/crt0.S
libgloss/mcore/elf-cmb.ld
libgloss/mcore/elf-cmb.specs
libgloss/mcore/fstat.c
libgloss/mcore/getpid.c
libgloss/mcore/kill.c
libgloss/mcore/lseek.c
libgloss/mcore/open.c
libgloss/mcore/pe-cmb.ld
libgloss/mcore/pe-cmb.specs
libgloss/mcore/print.c
libgloss/mcore/putnum.c
libgloss/mcore/raise.c
libgloss/mcore/read.c
libgloss/mcore/sbrk.c
libgloss/mcore/stat.c
libgloss/mcore/syscalls.S
libgloss/mcore/unlink.c
libgloss/mcore/write.c
libgloss/mips/Makefile.in
libgloss/mips/array-io.c
libgloss/mips/array.ld
libgloss/mips/cma101.c
libgloss/mips/configure
libgloss/mips/configure.in
libgloss/mips/crt0.S
libgloss/mips/ddb.ld
libgloss/mips/dtor.C
libgloss/mips/dve.ld
libgloss/mips/dvemon.c
libgloss/mips/entry.S
libgloss/mips/idt.ld
libgloss/mips/idtecoff.ld
libgloss/mips/idtmon.S
libgloss/mips/jmr3904-io.c
libgloss/mips/jmr3904app-java.ld
libgloss/mips/jmr3904app.ld
libgloss/mips/jmr3904dram-java.ld
libgloss/mips/jmr3904dram.ld
libgloss/mips/lsi.ld
libgloss/mips/lsi33k-stub.c
libgloss/mips/lsi33k-stub.h
libgloss/mips/lsipmon.S
libgloss/mips/nullmon.c
libgloss/mips/nullmon.ld
libgloss/mips/pmon.S
libgloss/mips/pmon.ld
libgloss/mips/regs.S
libgloss/mips/syscalls.c
libgloss/mips/test.c
libgloss/mips/vr4300.S
libgloss/mips/vr5xxx.S
libgloss/mn10200/Makefile.in
libgloss/mn10200/_exit.c
libgloss/mn10200/access.c
libgloss/mn10200/chmod.c
libgloss/mn10200/chown.c
libgloss/mn10200/close.c
libgloss/mn10200/configure
libgloss/mn10200/configure.in
libgloss/mn10200/creat.c
libgloss/mn10200/crt0.S
libgloss/mn10200/crt1.c
libgloss/mn10200/eval.ld
libgloss/mn10200/execv.c
libgloss/mn10200/execve.c
libgloss/mn10200/fork.c
libgloss/mn10200/fstat.c
libgloss/mn10200/getpid.c
libgloss/mn10200/gettime.c
libgloss/mn10200/isatty.c
libgloss/mn10200/kill.c
libgloss/mn10200/lseek.c
libgloss/mn10200/open.c
libgloss/mn10200/pipe.c
libgloss/mn10200/read.c
libgloss/mn10200/sbrk.c
libgloss/mn10200/sim.ld
libgloss/mn10200/stat.c
libgloss/mn10200/test.c
libgloss/mn10200/time.c
libgloss/mn10200/times.c
libgloss/mn10200/trap.S
libgloss/mn10200/trap.h
libgloss/mn10200/unlink.c
libgloss/mn10200/utime.c
libgloss/mn10200/wait.c
libgloss/mn10200/write.c
libgloss/mn10300/Makefile.in
libgloss/mn10300/_exit.c
libgloss/mn10300/access.c
libgloss/mn10300/chmod.c
libgloss/mn10300/chown.c
libgloss/mn10300/close.c
libgloss/mn10300/configure
libgloss/mn10300/configure.in
libgloss/mn10300/creat.c
libgloss/mn10300/crt0-eval.S
libgloss/mn10300/crt0.S
libgloss/mn10300/crt1.c
libgloss/mn10300/eval.ld
libgloss/mn10300/execv.c
libgloss/mn10300/execve.c
libgloss/mn10300/fork.c
libgloss/mn10300/fstat.c
libgloss/mn10300/getpid.c
libgloss/mn10300/gettime.c
libgloss/mn10300/isatty.c
libgloss/mn10300/kill.c
libgloss/mn10300/lseek.c
libgloss/mn10300/open.c
libgloss/mn10300/pipe.c
libgloss/mn10300/read.c
libgloss/mn10300/sbrk.c
libgloss/mn10300/sim.ld
libgloss/mn10300/stat.c
libgloss/mn10300/test.c
libgloss/mn10300/time.c
libgloss/mn10300/times.c
libgloss/mn10300/trap.S
libgloss/mn10300/trap.h
libgloss/mn10300/unlink.c
libgloss/mn10300/utime.c
libgloss/mn10300/wait.c
libgloss/mn10300/write.c
libgloss/open.c
libgloss/pa/Makefile.in
libgloss/pa/README
libgloss/pa/configure
libgloss/pa/configure.in
libgloss/pa/crt0.S
libgloss/pa/hp-milli.s
libgloss/pa/op50n-io.S
libgloss/pa/op50n.h
libgloss/pa/op50n.ld
libgloss/pa/op50nled.c
libgloss/pa/setjmp.S
libgloss/pa/test.c
libgloss/pa/w89k-io.c
libgloss/pa/w89k.h
libgloss/pa/w89k.ld
libgloss/print.c
libgloss/putnum.c
libgloss/read.c
libgloss/rs6000/Makefile.in
libgloss/rs6000/ads-exit.S
libgloss/rs6000/ads-io.c
libgloss/rs6000/ads.ld
libgloss/rs6000/configure
libgloss/rs6000/configure.in
libgloss/rs6000/crt0.S
libgloss/rs6000/mbx-exit.c
libgloss/rs6000/mbx-inbyte.c
libgloss/rs6000/mbx-outbyte.c
libgloss/rs6000/mbx-print.c
libgloss/rs6000/mbx.ld
libgloss/rs6000/mbx.specs
libgloss/rs6000/mcount.S
libgloss/rs6000/mvme-errno.c
libgloss/rs6000/mvme-exit.S
libgloss/rs6000/mvme-inbyte.S
libgloss/rs6000/mvme-outbyte.S
libgloss/rs6000/mvme-print.c
libgloss/rs6000/mvme-read.c
libgloss/rs6000/sim-abort.c
libgloss/rs6000/sim-crt0.S
libgloss/rs6000/sim-errno.c
libgloss/rs6000/sim-inbyte.c
libgloss/rs6000/sim-print.c
libgloss/rs6000/sim-sbrk.c
libgloss/rs6000/simulator.S
libgloss/rs6000/sol-cfuncs.c
libgloss/rs6000/sol-syscall.S
libgloss/rs6000/test.c
libgloss/rs6000/yellowknife.ld
libgloss/sbrk.c
libgloss/sh/sh1lcevb.ld
libgloss/sh/sh2lcevb.ld
libgloss/sh/sh3bb.ld
libgloss/sh/sh3lcevb.ld
libgloss/sparc/Makefile.in
libgloss/sparc/asm.h
libgloss/sparc/cache.c
libgloss/sparc/configure
libgloss/sparc/configure.in
libgloss/sparc/crt0-701.S
libgloss/sparc/crt0.S
libgloss/sparc/cygmon-crt0.S
libgloss/sparc/cygmon-salib.c
libgloss/sparc/cygmon-sparc64-ld.src
libgloss/sparc/cygmon.ld.src
libgloss/sparc/dtor.C
libgloss/sparc/elfsim.ld
libgloss/sparc/erc32-crt0.S
libgloss/sparc/erc32-io.c
libgloss/sparc/erc32-stub.c
libgloss/sparc/erc32.ld
libgloss/sparc/ex930.ld
libgloss/sparc/ex931.ld
libgloss/sparc/ex934.ld
libgloss/sparc/fixctors.c
libgloss/sparc/libsys/Makefile.in
libgloss/sparc/libsys/_exit.S
libgloss/sparc/libsys/cerror.S
libgloss/sparc/libsys/configure
libgloss/sparc/libsys/configure.in
libgloss/sparc/libsys/isatty.c
libgloss/sparc/libsys/libsys-crt0.S
libgloss/sparc/libsys/sbrk.S
libgloss/sparc/libsys/syscall.h
libgloss/sparc/libsys/syscallasm.h
libgloss/sparc/libsys/template.S
libgloss/sparc/libsys/template_r.S
libgloss/sparc/salib-701.c
libgloss/sparc/salib.c
libgloss/sparc/slite.h
libgloss/sparc/sparc-stub.c
libgloss/sparc/sparc86x.ld
libgloss/sparc/sparcl-stub.c
libgloss/sparc/sparclet-stub.c
libgloss/sparc/sparclite.h
libgloss/sparc/sysc-701.c
libgloss/sparc/syscalls.c
libgloss/sparc/test.c
libgloss/sparc/traps.S
libgloss/sparc/tsc701.ld
libgloss/stat.c
libgloss/syscall.h
libgloss/testsuite/Makefile.in
libgloss/testsuite/config/hppa.mt
libgloss/testsuite/config/m68k.mt
libgloss/testsuite/config/mips.mt
libgloss/testsuite/config/support.c
libgloss/testsuite/configure.in
libgloss/testsuite/lib/libgloss.exp
libgloss/testsuite/libgloss.all/.gdbinit
libgloss/testsuite/libgloss.all/Makefile.in
libgloss/testsuite/libgloss.all/array.c
libgloss/testsuite/libgloss.all/configure.in
libgloss/testsuite/libgloss.all/div.c
libgloss/testsuite/libgloss.all/double.c
libgloss/testsuite/libgloss.all/float.c
libgloss/testsuite/libgloss.all/func.c
libgloss/testsuite/libgloss.all/io.c
libgloss/testsuite/libgloss.all/math.c
libgloss/testsuite/libgloss.all/memory.c
libgloss/testsuite/libgloss.all/misc.c
libgloss/testsuite/libgloss.all/printf.c
libgloss/testsuite/libgloss.all/struct.c
libgloss/testsuite/libgloss.all/varargs.c
libgloss/testsuite/libgloss.all/varargs2.c
libgloss/unlink.c
libgloss/v850/sys/syscall.h
libgloss/wince/Makefile.am
libgloss/wince/Makefile.in
libgloss/wince/aclocal.m4
libgloss/wince/configure
libgloss/wince/configure.in
libgloss/write.c
ltconfig
ltmain.sh
makefile.vms
missing
mkdep
mkinstalldirs
move-if-change
mpw-README
mpw-build.in
mpw-config.in
mpw-configure
mpw-install
newlib/ChangeLog
newlib/MAINTAINERS
newlib/Makefile.am
newlib/Makefile.in
newlib/NEWS
newlib/README
newlib/acinclude.m4
newlib/aclocal.m4
newlib/configure
newlib/configure.host
newlib/configure.in
newlib/doc/Makefile.am
newlib/doc/Makefile.in
newlib/doc/aclocal.m4
newlib/doc/ansidecl.h
newlib/doc/configure
newlib/doc/configure.in
newlib/doc/doc.str
newlib/doc/makedoc.c
newlib/libc/Makefile.am
newlib/libc/Makefile.in
newlib/libc/aclocal.m4
newlib/libc/configure
newlib/libc/configure.in
newlib/libc/ctype/Makefile.am
newlib/libc/ctype/Makefile.in
newlib/libc/ctype/_tolower.c
newlib/libc/ctype/_toupper.c
newlib/libc/ctype/ctype.tex
newlib/libc/ctype/ctype_.c
newlib/libc/ctype/isalnum.c
newlib/libc/ctype/isalpha.c
newlib/libc/ctype/isascii.c
newlib/libc/ctype/iscntrl.c
newlib/libc/ctype/isdigit.c
newlib/libc/ctype/islower.c
newlib/libc/ctype/isprint.c
newlib/libc/ctype/ispunct.c
newlib/libc/ctype/isspace.c
newlib/libc/ctype/isupper.c
newlib/libc/ctype/isxdigit.c
newlib/libc/ctype/toascii.c
newlib/libc/ctype/tolower.c
newlib/libc/ctype/toupper.c
newlib/libc/errno/Makefile.am
newlib/libc/errno/Makefile.in
newlib/libc/errno/errno.c
newlib/libc/include/_ansi.h
newlib/libc/include/_syslist.h
newlib/libc/include/ar.h
newlib/libc/include/assert.h
newlib/libc/include/ctype.h
newlib/libc/include/dirent.h
newlib/libc/include/errno.h
newlib/libc/include/fastmath.h
newlib/libc/include/fcntl.h
newlib/libc/include/grp.h
newlib/libc/include/ieeefp.h
newlib/libc/include/locale.h
newlib/libc/include/machine/fastmath.h
newlib/libc/include/machine/ieeefp.h
newlib/libc/include/machine/setjmp-dj.h
newlib/libc/include/machine/setjmp.h
newlib/libc/include/machine/time.h
newlib/libc/include/machine/types.h
newlib/libc/include/malloc.h
newlib/libc/include/math.h
newlib/libc/include/paths.h
newlib/libc/include/process.h
newlib/libc/include/pwd.h
newlib/libc/include/reent.h
newlib/libc/include/regdef.h
newlib/libc/include/setjmp.h
newlib/libc/include/signal.h
newlib/libc/include/stdio.h
newlib/libc/include/stdlib.h
newlib/libc/include/string.h
newlib/libc/include/sys/_types.h
newlib/libc/include/sys/config.h
newlib/libc/include/sys/dirent.h
newlib/libc/include/sys/errno.h
newlib/libc/include/sys/fcntl.h
newlib/libc/include/sys/file.h
newlib/libc/include/sys/param.h
newlib/libc/include/sys/reent.h
newlib/libc/include/sys/resource.h
newlib/libc/include/sys/signal.h
newlib/libc/include/sys/stat-dj.h
newlib/libc/include/sys/stat.h
newlib/libc/include/sys/time.h
newlib/libc/include/sys/timeb.h
newlib/libc/include/sys/times.h
newlib/libc/include/sys/types.h
newlib/libc/include/sys/unistd.h
newlib/libc/include/sys/utime.h
newlib/libc/include/sys/wait.h
newlib/libc/include/termios.h
newlib/libc/include/time.h
newlib/libc/include/unctrl.h
newlib/libc/include/unistd.h
newlib/libc/include/utime.h
newlib/libc/include/utmp.h
newlib/libc/libc.texinfo
newlib/libc/locale/Makefile.am
newlib/libc/locale/Makefile.in
newlib/libc/locale/locale.c
newlib/libc/locale/locale.tex
newlib/libc/machine/Makefile.am
newlib/libc/machine/Makefile.in
newlib/libc/machine/a29k/Makefile.am
newlib/libc/machine/a29k/Makefile.in
newlib/libc/machine/a29k/aclocal.m4
newlib/libc/machine/a29k/configure
newlib/libc/machine/a29k/configure.in
newlib/libc/machine/aclocal.m4
newlib/libc/machine/arm/Makefile.am
newlib/libc/machine/arm/Makefile.in
newlib/libc/machine/arm/aclocal.m4
newlib/libc/machine/arm/configure
newlib/libc/machine/arm/configure.in
newlib/libc/machine/configure
newlib/libc/machine/configure.in
newlib/libc/machine/d10v/Makefile.am
newlib/libc/machine/d10v/Makefile.in
newlib/libc/machine/d10v/aclocal.m4
newlib/libc/machine/d10v/configure
newlib/libc/machine/d10v/configure.in
newlib/libc/machine/d10v/setjmp.S
newlib/libc/machine/d30v/Makefile.am
newlib/libc/machine/d30v/Makefile.in
newlib/libc/machine/d30v/aclocal.m4
newlib/libc/machine/d30v/configure
newlib/libc/machine/d30v/configure.in
newlib/libc/machine/d30v/setjmp.S
newlib/libc/machine/fr30/Makefile.am
newlib/libc/machine/fr30/Makefile.in
newlib/libc/machine/fr30/aclocal.m4
newlib/libc/machine/fr30/configure
newlib/libc/machine/fr30/configure.in
newlib/libc/machine/fr30/setjmp.S
newlib/libc/machine/h8300/Makefile.am
newlib/libc/machine/h8300/Makefile.in
newlib/libc/machine/h8300/aclocal.m4
newlib/libc/machine/h8300/configure
newlib/libc/machine/h8300/configure.in
newlib/libc/machine/h8300/defines.h
newlib/libc/machine/h8300/memcpy.S
newlib/libc/machine/h8300/memset.S
newlib/libc/machine/h8300/reg_memcpy.S
newlib/libc/machine/h8300/reg_memset.S
newlib/libc/machine/h8300/setjmp.S
newlib/libc/machine/h8300/strcmp.S
newlib/libc/machine/h8500/Makefile.am
newlib/libc/machine/h8500/Makefile.in
newlib/libc/machine/h8500/aclocal.m4
newlib/libc/machine/h8500/cmpsi.c
newlib/libc/machine/h8500/configure
newlib/libc/machine/h8500/configure.in
newlib/libc/machine/h8500/divhi3.S
newlib/libc/machine/h8500/divsi3.c
newlib/libc/machine/h8500/mulhi3.c
newlib/libc/machine/h8500/mulsi3.c
newlib/libc/machine/h8500/negsi2.c
newlib/libc/machine/h8500/psi.S
newlib/libc/machine/h8500/setjmp.S
newlib/libc/machine/h8500/shifts.c
newlib/libc/machine/hppa/DEFS.h
newlib/libc/machine/hppa/Makefile.am
newlib/libc/machine/hppa/Makefile.in
newlib/libc/machine/hppa/aclocal.m4
newlib/libc/machine/hppa/configure
newlib/libc/machine/hppa/configure.in
newlib/libc/machine/hppa/memchr.S
newlib/libc/machine/hppa/memcmp.S
newlib/libc/machine/hppa/memcpy.S
newlib/libc/machine/hppa/memset.S
newlib/libc/machine/hppa/pcc_prefix.s
newlib/libc/machine/hppa/setjmp.S
newlib/libc/machine/hppa/strcat.S
newlib/libc/machine/hppa/strcmp.S
newlib/libc/machine/hppa/strcpy.S
newlib/libc/machine/hppa/strlen.S
newlib/libc/machine/hppa/strncat.S
newlib/libc/machine/hppa/strncmp.S
newlib/libc/machine/hppa/strncpy.S
newlib/libc/machine/i386/Makefile.am
newlib/libc/machine/i386/Makefile.in
newlib/libc/machine/i386/aclocal.m4
newlib/libc/machine/i386/configure
newlib/libc/machine/i386/configure.in
newlib/libc/machine/i386/f_atan2.S
newlib/libc/machine/i386/f_atan2f.S
newlib/libc/machine/i386/f_exp.c
newlib/libc/machine/i386/f_expf.c
newlib/libc/machine/i386/f_frexp.S
newlib/libc/machine/i386/f_frexpf.S
newlib/libc/machine/i386/f_ldexp.S
newlib/libc/machine/i386/f_ldexpf.S
newlib/libc/machine/i386/f_log.S
newlib/libc/machine/i386/f_log10.S
newlib/libc/machine/i386/f_log10f.S
newlib/libc/machine/i386/f_logf.S
newlib/libc/machine/i386/f_math.h
newlib/libc/machine/i386/f_pow.c
newlib/libc/machine/i386/f_powf.c
newlib/libc/machine/i386/f_tan.S
newlib/libc/machine/i386/f_tanf.S
newlib/libc/machine/i386/i386mach.h
newlib/libc/machine/i386/memchr.S
newlib/libc/machine/i386/memcmp.S
newlib/libc/machine/i386/memcpy.S
newlib/libc/machine/i386/memmove.S
newlib/libc/machine/i386/memset.S
newlib/libc/machine/i386/setjmp.S
newlib/libc/machine/i386/strchr.S
newlib/libc/machine/i386/strlen.S
newlib/libc/machine/i960/Makefile.am
newlib/libc/machine/i960/Makefile.in
newlib/libc/machine/i960/aclocal.m4
newlib/libc/machine/i960/configure
newlib/libc/machine/i960/configure.in
newlib/libc/machine/i960/memccpy.S
newlib/libc/machine/i960/memccpy_ca.S
newlib/libc/machine/i960/memchr.S
newlib/libc/machine/i960/memchr_ca.S
newlib/libc/machine/i960/memcmp.S
newlib/libc/machine/i960/memcmp_ca.S
newlib/libc/machine/i960/memcpy.S
newlib/libc/machine/i960/memcpy_ca.S
newlib/libc/machine/i960/memset.S
newlib/libc/machine/i960/setjmp.S
newlib/libc/machine/i960/strchr.S
newlib/libc/machine/i960/strchr_ca.S
newlib/libc/machine/i960/strcmp.S
newlib/libc/machine/i960/strcmp_ca.S
newlib/libc/machine/i960/strcpy.S
newlib/libc/machine/i960/strcpy_ca.S
newlib/libc/machine/i960/strcspn.S
newlib/libc/machine/i960/strdup.S
newlib/libc/machine/i960/strlen.S
newlib/libc/machine/i960/strlen_ca.S
newlib/libc/machine/i960/strncat.S
newlib/libc/machine/i960/strncat_ca.S
newlib/libc/machine/i960/strncmp.S
newlib/libc/machine/i960/strncmp_ca.S
newlib/libc/machine/i960/strncpy.S
newlib/libc/machine/i960/strncpy_ca.S
newlib/libc/machine/i960/strpbrk.S
newlib/libc/machine/i960/strrchr.S
newlib/libc/machine/m32r/Makefile.am
newlib/libc/machine/m32r/Makefile.in
newlib/libc/machine/m32r/aclocal.m4
newlib/libc/machine/m32r/configure
newlib/libc/machine/m32r/configure.in
newlib/libc/machine/m32r/setjmp.S
newlib/libc/machine/m68k/Makefile.am
newlib/libc/machine/m68k/Makefile.in
newlib/libc/machine/m68k/aclocal.m4
newlib/libc/machine/m68k/configure
newlib/libc/machine/m68k/configure.in
newlib/libc/machine/m68k/setjmp.S
newlib/libc/machine/m68k/strcpy.c
newlib/libc/machine/m68k/strlen.c
newlib/libc/machine/m88k/Makefile.am
newlib/libc/machine/m88k/Makefile.in
newlib/libc/machine/m88k/aclocal.m4
newlib/libc/machine/m88k/configure
newlib/libc/machine/m88k/configure.in
newlib/libc/machine/m88k/setjmp.S
newlib/libc/machine/mips/Makefile.am
newlib/libc/machine/mips/Makefile.in
newlib/libc/machine/mips/aclocal.m4
newlib/libc/machine/mips/configure
newlib/libc/machine/mips/configure.in
newlib/libc/machine/mips/machine/regdef.h
newlib/libc/machine/mips/setjmp.S
newlib/libc/machine/mn10200/Makefile.am
newlib/libc/machine/mn10200/Makefile.in
newlib/libc/machine/mn10200/aclocal.m4
newlib/libc/machine/mn10200/configure
newlib/libc/machine/mn10200/configure.in
newlib/libc/machine/mn10200/setjmp.S
newlib/libc/machine/mn10300/Makefile.am
newlib/libc/machine/mn10300/Makefile.in
newlib/libc/machine/mn10300/aclocal.m4
newlib/libc/machine/mn10300/configure
newlib/libc/machine/mn10300/configure.in
newlib/libc/machine/mn10300/memchr.S
newlib/libc/machine/mn10300/memcmp.S
newlib/libc/machine/mn10300/memcpy.S
newlib/libc/machine/mn10300/memset.S
newlib/libc/machine/mn10300/setjmp.S
newlib/libc/machine/mn10300/strchr.S
newlib/libc/machine/mn10300/strcmp.S
newlib/libc/machine/mn10300/strcpy.S
newlib/libc/machine/mn10300/strlen.S
newlib/libc/machine/necv70/Makefile.am
newlib/libc/machine/necv70/Makefile.in
newlib/libc/machine/necv70/aclocal.m4
newlib/libc/machine/necv70/configure
newlib/libc/machine/necv70/configure.in
newlib/libc/machine/necv70/fastmath.s
newlib/libc/machine/necv70/machine/registers.h
newlib/libc/machine/necv70/necv70.tex
newlib/libc/machine/necv70/setjmp.s
newlib/libc/machine/powerpc/Makefile.am
newlib/libc/machine/powerpc/Makefile.in
newlib/libc/machine/powerpc/aclocal.m4
newlib/libc/machine/powerpc/configure
newlib/libc/machine/powerpc/configure.in
newlib/libc/machine/powerpc/setjmp.S
newlib/libc/machine/sh/Makefile.am
newlib/libc/machine/sh/Makefile.in
newlib/libc/machine/sh/aclocal.m4
newlib/libc/machine/sh/asm.h
newlib/libc/machine/sh/configure
newlib/libc/machine/sh/configure.in
newlib/libc/machine/sh/memcpy.S
newlib/libc/machine/sh/memset.S
newlib/libc/machine/sh/setjmp.S
newlib/libc/machine/sh/strcmp.S
newlib/libc/machine/sh/strcpy.S
newlib/libc/machine/sparc/Makefile.am
newlib/libc/machine/sparc/Makefile.in
newlib/libc/machine/sparc/aclocal.m4
newlib/libc/machine/sparc/configure
newlib/libc/machine/sparc/configure.in
newlib/libc/machine/sparc/machine/sparclet.h
newlib/libc/machine/sparc/scan.c
newlib/libc/machine/sparc/setjmp.S
newlib/libc/machine/sparc/shuffle.c
newlib/libc/machine/tic80/Makefile.am
newlib/libc/machine/tic80/Makefile.in
newlib/libc/machine/tic80/aclocal.m4
newlib/libc/machine/tic80/configure
newlib/libc/machine/tic80/configure.in
newlib/libc/machine/tic80/setjmp.S
newlib/libc/machine/v850/Makefile.am
newlib/libc/machine/v850/Makefile.in
newlib/libc/machine/v850/aclocal.m4
newlib/libc/machine/v850/configure
newlib/libc/machine/v850/configure.in
newlib/libc/machine/v850/setjmp.S
newlib/libc/machine/w65/Makefile.am
newlib/libc/machine/w65/Makefile.in
newlib/libc/machine/w65/aclocal.m4
newlib/libc/machine/w65/cmpsi.c
newlib/libc/machine/w65/configure
newlib/libc/machine/w65/configure.in
newlib/libc/machine/w65/divsi3.c
newlib/libc/machine/w65/lshrhi.s
newlib/libc/machine/w65/mulsi3.c
newlib/libc/machine/w65/sdivhi3.s
newlib/libc/machine/w65/smulhi3.s
newlib/libc/machine/w65/udivhi3.s
newlib/libc/machine/w65/umodhi3.s
newlib/libc/machine/z8k/Makefile.am
newlib/libc/machine/z8k/Makefile.in
newlib/libc/machine/z8k/aclocal.m4
newlib/libc/machine/z8k/args.h
newlib/libc/machine/z8k/configure
newlib/libc/machine/z8k/configure.in
newlib/libc/machine/z8k/setjmp.S
newlib/libc/misc/Makefile.am
newlib/libc/misc/Makefile.in
newlib/libc/misc/dprintf.c
newlib/libc/misc/ffs.c
newlib/libc/misc/misc.tex
newlib/libc/misc/unctrl.c
newlib/libc/posix/Makefile.am
newlib/libc/posix/Makefile.in
newlib/libc/posix/closedir.c
newlib/libc/posix/creat.c
newlib/libc/posix/execl.c
newlib/libc/posix/execle.c
newlib/libc/posix/execlp.c
newlib/libc/posix/execv.c
newlib/libc/posix/execve.c
newlib/libc/posix/execvp.c
newlib/libc/posix/isatty.c
newlib/libc/posix/opendir.c
newlib/libc/posix/popen.c
newlib/libc/posix/readdir.c
newlib/libc/posix/rewinddir.c
newlib/libc/posix/scandir.c
newlib/libc/posix/seekdir.c
newlib/libc/posix/telldir.c
newlib/libc/reent/Makefile.am
newlib/libc/reent/Makefile.in
newlib/libc/reent/closer.c
newlib/libc/reent/execr.c
newlib/libc/reent/fstatr.c
newlib/libc/reent/impure.c
newlib/libc/reent/linkr.c
newlib/libc/reent/lseekr.c
newlib/libc/reent/openr.c
newlib/libc/reent/readr.c
newlib/libc/reent/reent.c
newlib/libc/reent/reent.tex
newlib/libc/reent/sbrkr.c
newlib/libc/reent/signalr.c
newlib/libc/reent/statr.c
newlib/libc/reent/timer.c
newlib/libc/reent/unlinkr.c
newlib/libc/reent/writer.c
newlib/libc/saber
newlib/libc/signal/Makefile.am
newlib/libc/signal/Makefile.in
newlib/libc/signal/raise.c
newlib/libc/signal/signal.c
newlib/libc/signal/signal.tex
newlib/libc/stdio/Makefile.am
newlib/libc/stdio/Makefile.in
newlib/libc/stdio/clearerr.c
newlib/libc/stdio/fclose.c
newlib/libc/stdio/fdopen.c
newlib/libc/stdio/feof.c
newlib/libc/stdio/ferror.c
newlib/libc/stdio/fflush.c
newlib/libc/stdio/fgetc.c
newlib/libc/stdio/fgetpos.c
newlib/libc/stdio/fgets.c
newlib/libc/stdio/fileno.c
newlib/libc/stdio/findfp.c
newlib/libc/stdio/fiprintf.c
newlib/libc/stdio/flags.c
newlib/libc/stdio/floatio.h
newlib/libc/stdio/fopen.c
newlib/libc/stdio/fprintf.c
newlib/libc/stdio/fputc.c
newlib/libc/stdio/fputs.c
newlib/libc/stdio/fread.c
newlib/libc/stdio/freopen.c
newlib/libc/stdio/fscanf.c
newlib/libc/stdio/fseek.c
newlib/libc/stdio/fsetpos.c
newlib/libc/stdio/ftell.c
newlib/libc/stdio/fvwrite.c
newlib/libc/stdio/fvwrite.h
newlib/libc/stdio/fwalk.c
newlib/libc/stdio/fwrite.c
newlib/libc/stdio/getc.c
newlib/libc/stdio/getchar.c
newlib/libc/stdio/gets.c
newlib/libc/stdio/getw.c
newlib/libc/stdio/iprintf.c
newlib/libc/stdio/local.h
newlib/libc/stdio/makebuf.c
newlib/libc/stdio/mktemp.c
newlib/libc/stdio/perror.c
newlib/libc/stdio/printf.c
newlib/libc/stdio/putc.c
newlib/libc/stdio/putchar.c
newlib/libc/stdio/puts.c
newlib/libc/stdio/putw.c
newlib/libc/stdio/refill.c
newlib/libc/stdio/remove.c
newlib/libc/stdio/rename.c
newlib/libc/stdio/rewind.c
newlib/libc/stdio/rget.c
newlib/libc/stdio/scanf.c
newlib/libc/stdio/setbuf.c
newlib/libc/stdio/setvbuf.c
newlib/libc/stdio/siprintf.c
newlib/libc/stdio/snprintf.c
newlib/libc/stdio/sprintf.c
newlib/libc/stdio/sscanf.c
newlib/libc/stdio/stdio.c
newlib/libc/stdio/stdio.tex
newlib/libc/stdio/tmpfile.c
newlib/libc/stdio/tmpnam.c
newlib/libc/stdio/ungetc.c
newlib/libc/stdio/vfieeefp.h
newlib/libc/stdio/vfprintf.c
newlib/libc/stdio/vfscanf.c
newlib/libc/stdio/vprintf.c
newlib/libc/stdio/vsnprintf.c
newlib/libc/stdio/vsprintf.c
newlib/libc/stdio/wbuf.c
newlib/libc/stdio/wsetup.c
newlib/libc/stdlib/Makefile.am
newlib/libc/stdlib/Makefile.in
newlib/libc/stdlib/__adjust.c
newlib/libc/stdlib/__exp10.c
newlib/libc/stdlib/__ten_mu.c
newlib/libc/stdlib/abort.c
newlib/libc/stdlib/abs.c
newlib/libc/stdlib/assert.c
newlib/libc/stdlib/atexit.c
newlib/libc/stdlib/atexit.h
newlib/libc/stdlib/atof.c
newlib/libc/stdlib/atoff.c
newlib/libc/stdlib/atoi.c
newlib/libc/stdlib/atol.c
newlib/libc/stdlib/bsearch.c
newlib/libc/stdlib/calloc.c
newlib/libc/stdlib/div.c
newlib/libc/stdlib/dtoa.c
newlib/libc/stdlib/dtoastub.c
newlib/libc/stdlib/ecvtbuf.c
newlib/libc/stdlib/efgcvt.c
newlib/libc/stdlib/environ.c
newlib/libc/stdlib/envlock.c
newlib/libc/stdlib/envlock.h
newlib/libc/stdlib/eprintf.c
newlib/libc/stdlib/exit.c
newlib/libc/stdlib/getenv.c
newlib/libc/stdlib/getenv_r.c
newlib/libc/stdlib/getopt.c
newlib/libc/stdlib/labs.c
newlib/libc/stdlib/ldiv.c
newlib/libc/stdlib/local.h
newlib/libc/stdlib/malign.c
newlib/libc/stdlib/malloc.c
newlib/libc/stdlib/mallocr.c
newlib/libc/stdlib/mbctype.h
newlib/libc/stdlib/mblen.c
newlib/libc/stdlib/mblen_r.c
newlib/libc/stdlib/mbstowcs.c
newlib/libc/stdlib/mbstowcs_r.c
newlib/libc/stdlib/mbtowc.c
newlib/libc/stdlib/mbtowc_r.c
newlib/libc/stdlib/mlock.c
newlib/libc/stdlib/mprec.c
newlib/libc/stdlib/mprec.h
newlib/libc/stdlib/msize.c
newlib/libc/stdlib/mstats.c
newlib/libc/stdlib/mtrim.c
newlib/libc/stdlib/putenv.c
newlib/libc/stdlib/putenv_r.c
newlib/libc/stdlib/qsort.c
newlib/libc/stdlib/rand.c
newlib/libc/stdlib/rand_r.c
newlib/libc/stdlib/realloc.c
newlib/libc/stdlib/setenv.c
newlib/libc/stdlib/setenv_r.c
newlib/libc/stdlib/std.h
newlib/libc/stdlib/stdlib.tex
newlib/libc/stdlib/strdup.c
newlib/libc/stdlib/strdup_r.c
newlib/libc/stdlib/strtod.c
newlib/libc/stdlib/strtol.c
newlib/libc/stdlib/strtoul.c
newlib/libc/stdlib/system.c
newlib/libc/stdlib/valloc.c
newlib/libc/stdlib/wcstombs.c
newlib/libc/stdlib/wcstombs_r.c
newlib/libc/stdlib/wctomb.c
newlib/libc/stdlib/wctomb_r.c
newlib/libc/string/Makefile.am
newlib/libc/string/Makefile.in
newlib/libc/string/bcmp.c
newlib/libc/string/bcopy.c
newlib/libc/string/bzero.c
newlib/libc/string/index.c
newlib/libc/string/memchr.c
newlib/libc/string/memcmp.c
newlib/libc/string/memcpy.c
newlib/libc/string/memmove.c
newlib/libc/string/memset.c
newlib/libc/string/rindex.c
newlib/libc/string/strcasecmp.c
newlib/libc/string/strcat.c
newlib/libc/string/strchr.c
newlib/libc/string/strcmp.c
newlib/libc/string/strcoll.c
newlib/libc/string/strcpy.c
newlib/libc/string/strcspn.c
newlib/libc/string/strerror.c
newlib/libc/string/strings.tex
newlib/libc/string/strlen.c
newlib/libc/string/strlwr.c
newlib/libc/string/strncasecmp.c
newlib/libc/string/strncat.c
newlib/libc/string/strncmp.c
newlib/libc/string/strncpy.c
newlib/libc/string/strpbrk.c
newlib/libc/string/strrchr.c
newlib/libc/string/strspn.c
newlib/libc/string/strstr.c
newlib/libc/string/strtok.c
newlib/libc/string/strtok_r.c
newlib/libc/string/strupr.c
newlib/libc/string/strxfrm.c
newlib/libc/string/swab.c
newlib/libc/string/u_strerr.c
newlib/libc/sys.tex
newlib/libc/sys/Makefile.am
newlib/libc/sys/Makefile.in
newlib/libc/sys/a29khif/Makefile.am
newlib/libc/sys/a29khif/Makefile.in
newlib/libc/sys/a29khif/_alloc.s
newlib/libc/sys/a29khif/_close.s
newlib/libc/sys/a29khif/_cycles.s
newlib/libc/sys/a29khif/_exit.s
newlib/libc/sys/a29khif/_fstat.s
newlib/libc/sys/a29khif/_getpsiz.s
newlib/libc/sys/a29khif/_gettz.s
newlib/libc/sys/a29khif/_ioctl.s
newlib/libc/sys/a29khif/_iostat.s
newlib/libc/sys/a29khif/_iowait.s
newlib/libc/sys/a29khif/_isatty.s
newlib/libc/sys/a29khif/_lseek.s
newlib/libc/sys/a29khif/_open.s
newlib/libc/sys/a29khif/_query.s
newlib/libc/sys/a29khif/_read.s
newlib/libc/sys/a29khif/_sbrk.s
newlib/libc/sys/a29khif/_setim.s
newlib/libc/sys/a29khif/_settrap.s
newlib/libc/sys/a29khif/_setvec.s
newlib/libc/sys/a29khif/_tmpnam.s
newlib/libc/sys/a29khif/_write.s
newlib/libc/sys/a29khif/aclocal.m4
newlib/libc/sys/a29khif/alloc.s
newlib/libc/sys/a29khif/clock.s
newlib/libc/sys/a29khif/configure
newlib/libc/sys/a29khif/configure.in
newlib/libc/sys/a29khif/crt0.s
newlib/libc/sys/a29khif/getargs.s
newlib/libc/sys/a29khif/getenv.s
newlib/libc/sys/a29khif/getpid.c
newlib/libc/sys/a29khif/kill.c
newlib/libc/sys/a29khif/read.s
newlib/libc/sys/a29khif/remove.s
newlib/libc/sys/a29khif/rename.s
newlib/libc/sys/a29khif/signal.s
newlib/libc/sys/a29khif/stubs.s
newlib/libc/sys/a29khif/sys/cpudef.h
newlib/libc/sys/a29khif/sys/fpsymbol.h
newlib/libc/sys/a29khif/sys/intrinsi.h
newlib/libc/sys/a29khif/sys/macros.h
newlib/libc/sys/a29khif/sys/proreg.h
newlib/libc/sys/a29khif/sys/romdcl.h
newlib/libc/sys/a29khif/sys/smartmac.h
newlib/libc/sys/a29khif/sys/sysmac.h
newlib/libc/sys/a29khif/systime.s
newlib/libc/sys/a29khif/vec.s
newlib/libc/sys/aclocal.m4
newlib/libc/sys/arm/Makefile.am
newlib/libc/sys/arm/Makefile.in
newlib/libc/sys/arm/aclocal.m4
newlib/libc/sys/arm/configure
newlib/libc/sys/arm/configure.in
newlib/libc/sys/arm/crt0.S
newlib/libc/sys/arm/libcfunc.c
newlib/libc/sys/arm/setjmp.S
newlib/libc/sys/arm/swi.h
newlib/libc/sys/arm/sys/param.h
newlib/libc/sys/arm/syscalls.c
newlib/libc/sys/arm/trap.S
newlib/libc/sys/configure
newlib/libc/sys/configure.in
newlib/libc/sys/cygwin/Makefile.am
newlib/libc/sys/cygwin/Makefile.in
newlib/libc/sys/cygwin/aclocal.m4
newlib/libc/sys/cygwin/configure
newlib/libc/sys/cygwin/configure.in
newlib/libc/sys/cygwin/crt0.c
newlib/libc/sys/cygwin/sys/dirent.h
newlib/libc/sys/cygwin/sys/param.h
newlib/libc/sys/cygwin/sys/utime.h
newlib/libc/sys/cygwin/sys/utmp.h
newlib/libc/sys/d10v/Makefile.am
newlib/libc/sys/d10v/Makefile.in
newlib/libc/sys/d10v/aclocal.m4
newlib/libc/sys/d10v/configure
newlib/libc/sys/d10v/configure.in
newlib/libc/sys/d10v/creat.c
newlib/libc/sys/d10v/crt0.S
newlib/libc/sys/d10v/sys/syscall.h
newlib/libc/sys/d10v/syscalls.c
newlib/libc/sys/d10v/trap.S
newlib/libc/sys/decstation/Makefile.am
newlib/libc/sys/decstation/Makefile.in
newlib/libc/sys/decstation/_main.c
newlib/libc/sys/decstation/aclocal.m4
newlib/libc/sys/decstation/configure
newlib/libc/sys/decstation/configure.in
newlib/libc/sys/decstation/sys/dirent.h
newlib/libc/sys/go32/Makefile.am
newlib/libc/sys/go32/Makefile.in
newlib/libc/sys/go32/_exit.s
newlib/libc/sys/go32/_main.c
newlib/libc/sys/go32/abort.c
newlib/libc/sys/go32/access.c
newlib/libc/sys/go32/aclocal.m4
newlib/libc/sys/go32/bdos.c
newlib/libc/sys/go32/bdosptr.c
newlib/libc/sys/go32/brk.s
newlib/libc/sys/go32/chdir.s
newlib/libc/sys/go32/chmod.c
newlib/libc/sys/go32/chown.c
newlib/libc/sys/go32/clock.S
newlib/libc/sys/go32/close.s
newlib/libc/sys/go32/configure
newlib/libc/sys/go32/configure.in
newlib/libc/sys/go32/copying.dj
newlib/libc/sys/go32/creat.s
newlib/libc/sys/go32/crlf2nl.c
newlib/libc/sys/go32/crt0.S
newlib/libc/sys/go32/dir.c
newlib/libc/sys/go32/dir.h
newlib/libc/sys/go32/djtime.h
newlib/libc/sys/go32/dos.h
newlib/libc/sys/go32/dosmem.S
newlib/libc/sys/go32/dpmi.c
newlib/libc/sys/go32/dpmi.h
newlib/libc/sys/go32/dup.s
newlib/libc/sys/go32/dup2.s
newlib/libc/sys/go32/exec.c
newlib/libc/sys/go32/fchmod.c
newlib/libc/sys/go32/findfirs.s
newlib/libc/sys/go32/findnext.s
newlib/libc/sys/go32/fixpath.c
newlib/libc/sys/go32/fstat.s
newlib/libc/sys/go32/fsync.s
newlib/libc/sys/go32/ftruncat.c
newlib/libc/sys/go32/gerrno.s
newlib/libc/sys/go32/getcwd.c
newlib/libc/sys/go32/getdate.c
newlib/libc/sys/go32/getdtabl.c
newlib/libc/sys/go32/getgid.c
newlib/libc/sys/go32/getkey.s
newlib/libc/sys/go32/getpages.c
newlib/libc/sys/go32/getpid.c
newlib/libc/sys/go32/getrusag.c
newlib/libc/sys/go32/gettime.c
newlib/libc/sys/go32/gettimeo.c
newlib/libc/sys/go32/gettimeo.s
newlib/libc/sys/go32/getuid.c
newlib/libc/sys/go32/getwd.s
newlib/libc/sys/go32/go32.h
newlib/libc/sys/go32/go32func.c
newlib/libc/sys/go32/infoblk.c
newlib/libc/sys/go32/inportb.s
newlib/libc/sys/go32/inportl.s
newlib/libc/sys/go32/inportsb.s
newlib/libc/sys/go32/inportsl.s
newlib/libc/sys/go32/inportsw.s
newlib/libc/sys/go32/inportw.s
newlib/libc/sys/go32/int86x.s
newlib/libc/sys/go32/intdos.c
newlib/libc/sys/go32/intdosx.c
newlib/libc/sys/go32/isatty.s
newlib/libc/sys/go32/kbhit.s
newlib/libc/sys/go32/kill.c
newlib/libc/sys/go32/link.s
newlib/libc/sys/go32/longjmp.S
newlib/libc/sys/go32/lseek.s
newlib/libc/sys/go32/lstat.s
newlib/libc/sys/go32/mkdir.s
newlib/libc/sys/go32/open.s
newlib/libc/sys/go32/outportb.s
newlib/libc/sys/go32/outportl.s
newlib/libc/sys/go32/outportw.s
newlib/libc/sys/go32/outprtsb.s
newlib/libc/sys/go32/outprtsl.s
newlib/libc/sys/go32/outprtsw.s
newlib/libc/sys/go32/pc.h
newlib/libc/sys/go32/read.s
newlib/libc/sys/go32/readv.c
newlib/libc/sys/go32/rename.s
newlib/libc/sys/go32/rmdir.s
newlib/libc/sys/go32/sbrk.s
newlib/libc/sys/go32/screen.S
newlib/libc/sys/go32/setjmp.S
newlib/libc/sys/go32/setmode.s
newlib/libc/sys/go32/setstack.S
newlib/libc/sys/go32/settimeo.s
newlib/libc/sys/go32/sleep.c
newlib/libc/sys/go32/stat.c
newlib/libc/sys/go32/stat.s
newlib/libc/sys/go32/stat_ast.s
newlib/libc/sys/go32/sys/dir.h
newlib/libc/sys/go32/sys/dirent.h
newlib/libc/sys/go32/sys/dos.h
newlib/libc/sys/go32/sys/dpmi.h
newlib/libc/sys/go32/sys/errno.h
newlib/libc/sys/go32/sys/fcntl.h
newlib/libc/sys/go32/sys/file.h
newlib/libc/sys/go32/sys/go32.h
newlib/libc/sys/go32/sys/param.h
newlib/libc/sys/go32/sys/pc.h
newlib/libc/sys/go32/sys/register.h
newlib/libc/sys/go32/sys/resource.h
newlib/libc/sys/go32/sys/setjmp.h
newlib/libc/sys/go32/sys/stdc.h
newlib/libc/sys/go32/sys/uio.h
newlib/libc/sys/go32/syserr.c
newlib/libc/sys/go32/system.s
newlib/libc/sys/go32/tell.s
newlib/libc/sys/go32/time.c
newlib/libc/sys/go32/truncate.c
newlib/libc/sys/go32/turbo.s
newlib/libc/sys/go32/umask.c
newlib/libc/sys/go32/unlink.s
newlib/libc/sys/go32/utime.c
newlib/libc/sys/go32/utimes.c
newlib/libc/sys/go32/write.s
newlib/libc/sys/go32/writestub.c
newlib/libc/sys/go32/writev.c
newlib/libc/sys/h8300hms/Makefile.am
newlib/libc/sys/h8300hms/Makefile.in
newlib/libc/sys/h8300hms/_exit.c
newlib/libc/sys/h8300hms/aclocal.m4
newlib/libc/sys/h8300hms/configure
newlib/libc/sys/h8300hms/configure.in
newlib/libc/sys/h8300hms/crt0.S
newlib/libc/sys/h8300hms/crt1.c
newlib/libc/sys/h8300hms/misc.c
newlib/libc/sys/h8300hms/sbrk.c
newlib/libc/sys/h8300hms/sys/file.h
newlib/libc/sys/h8300hms/syscalls.c
newlib/libc/sys/h8300hms/write.c
newlib/libc/sys/h8500hms/Makefile.am
newlib/libc/sys/h8500hms/Makefile.in
newlib/libc/sys/h8500hms/aclocal.m4
newlib/libc/sys/h8500hms/configure
newlib/libc/sys/h8500hms/configure.in
newlib/libc/sys/h8500hms/crt0.c
newlib/libc/sys/h8500hms/misc.c
newlib/libc/sys/h8500hms/syscalls.c
newlib/libc/sys/m88kbug/Makefile.am
newlib/libc/sys/m88kbug/Makefile.in
newlib/libc/sys/m88kbug/aclocal.m4
newlib/libc/sys/m88kbug/configure
newlib/libc/sys/m88kbug/configure.in
newlib/libc/sys/m88kbug/crt0.c
newlib/libc/sys/m88kbug/sys/systraps.h
newlib/libc/sys/m88kbug/syscalls.c
newlib/libc/sys/netware/Makefile.am
newlib/libc/sys/netware/Makefile.in
newlib/libc/sys/netware/aclocal.m4
newlib/libc/sys/netware/configure
newlib/libc/sys/netware/configure.in
newlib/libc/sys/netware/crt0.c
newlib/libc/sys/netware/getpid.c
newlib/libc/sys/netware/link.c
newlib/libc/sys/rtems/Makefile.am
newlib/libc/sys/rtems/Makefile.in
newlib/libc/sys/rtems/aclocal.m4
newlib/libc/sys/rtems/configure
newlib/libc/sys/rtems/configure.in
newlib/libc/sys/rtems/crt0.c
newlib/libc/sys/rtems/dummysys.c
newlib/libc/sys/rtems/include/limits.h
newlib/libc/sys/rtems/include/signal.h
newlib/libc/sys/rtems/include/time.h
newlib/libc/sys/rtems/sys/dirent.h
newlib/libc/sys/rtems/sys/features.h
newlib/libc/sys/rtems/sys/sched.h
newlib/libc/sys/rtems/sys/siginfo.h
newlib/libc/sys/rtems/sys/signal.h
newlib/libc/sys/rtems/sys/time.h
newlib/libc/sys/rtems/sys/times.h
newlib/libc/sys/rtems/sys/types.h
newlib/libc/sys/sh/Makefile.am
newlib/libc/sys/sh/Makefile.in
newlib/libc/sys/sh/aclocal.m4
newlib/libc/sys/sh/configure
newlib/libc/sys/sh/configure.in
newlib/libc/sys/sh/creat.c
newlib/libc/sys/sh/crt0.S
newlib/libc/sys/sh/sys/syscall.h
newlib/libc/sys/sh/syscalls.c
newlib/libc/sys/sh/trap.S
newlib/libc/sys/sparc64/Makefile.am
newlib/libc/sys/sparc64/Makefile.in
newlib/libc/sys/sparc64/_exit.S
newlib/libc/sys/sparc64/_main.c
newlib/libc/sys/sparc64/aclocal.m4
newlib/libc/sys/sparc64/cerror.S
newlib/libc/sys/sparc64/closedir.c
newlib/libc/sys/sparc64/configure
newlib/libc/sys/sparc64/configure.in
newlib/libc/sys/sparc64/creat.c
newlib/libc/sys/sparc64/crt0.S
newlib/libc/sys/sparc64/dup2.S
newlib/libc/sys/sparc64/execve.S
newlib/libc/sys/sparc64/ieee.c
newlib/libc/sys/sparc64/isatty.c
newlib/libc/sys/sparc64/lstat.S
newlib/libc/sys/sparc64/opendir.c
newlib/libc/sys/sparc64/readdir.c
newlib/libc/sys/sparc64/rewinddir.c
newlib/libc/sys/sparc64/sbrk.S
newlib/libc/sys/sparc64/scandir.c
newlib/libc/sys/sparc64/seekdir.c
newlib/libc/sys/sparc64/sigsetjmp.S
newlib/libc/sys/sparc64/stat.S
newlib/libc/sys/sparc64/sys/dirent.h
newlib/libc/sys/sparc64/sys/fcntl.h
newlib/libc/sys/sparc64/sys/file.h
newlib/libc/sys/sparc64/sys/stat.h
newlib/libc/sys/sparc64/sys/syscall.h
newlib/libc/sys/sparc64/sys/syscallasm.h
newlib/libc/sys/sparc64/sys/termios.h
newlib/libc/sys/sparc64/sys/time.h
newlib/libc/sys/sparc64/sys/utime.h
newlib/libc/sys/sparc64/sys/utmp.h
newlib/libc/sys/sparc64/sys/wait.h
newlib/libc/sys/sparc64/telldir.c
newlib/libc/sys/sparc64/template.S
newlib/libc/sys/sparc64/template_r.S
newlib/libc/sys/sparc64/utime.S
newlib/libc/sys/sparc64/utime2.c
newlib/libc/sys/sparc64/wait.S
newlib/libc/sys/sun4/Makefile.am
newlib/libc/sys/sun4/Makefile.in
newlib/libc/sys/sun4/_main.c
newlib/libc/sys/sun4/aclocal.m4
newlib/libc/sys/sun4/configure
newlib/libc/sys/sun4/configure.in
newlib/libc/sys/sun4/ieee.c
newlib/libc/sys/sun4/sys/dirent.h
newlib/libc/sys/sun4/sys/file.h
newlib/libc/sys/sun4/sys/termios.h
newlib/libc/sys/sun4/sys/utime.h
newlib/libc/sys/sun4/sys/utmp.h
newlib/libc/sys/sun4/sys/wait.h
newlib/libc/sys/sysmec/Makefile.am
newlib/libc/sys/sysmec/Makefile.in
newlib/libc/sys/sysmec/_exit.c
newlib/libc/sys/sysmec/access.c
newlib/libc/sys/sysmec/aclocal.m4
newlib/libc/sys/sysmec/chmod.c
newlib/libc/sys/sysmec/chown.c
newlib/libc/sys/sysmec/close.c
newlib/libc/sys/sysmec/configure
newlib/libc/sys/sysmec/configure.in
newlib/libc/sys/sysmec/creat.c
newlib/libc/sys/sysmec/crt0.S
newlib/libc/sys/sysmec/crt1.c
newlib/libc/sys/sysmec/execv.c
newlib/libc/sys/sysmec/execve.c
newlib/libc/sys/sysmec/fork.c
newlib/libc/sys/sysmec/fstat.c
newlib/libc/sys/sysmec/getpid.c
newlib/libc/sys/sysmec/gettime.c
newlib/libc/sys/sysmec/isatty.c
newlib/libc/sys/sysmec/kill.c
newlib/libc/sys/sysmec/lseek.c
newlib/libc/sys/sysmec/open.c
newlib/libc/sys/sysmec/pipe.c
newlib/libc/sys/sysmec/read.c
newlib/libc/sys/sysmec/sbrk.c
newlib/libc/sys/sysmec/stat.c
newlib/libc/sys/sysmec/sys/syscall.h
newlib/libc/sys/sysmec/time.c
newlib/libc/sys/sysmec/times.c
newlib/libc/sys/sysmec/trap.S
newlib/libc/sys/sysmec/unlink.c
newlib/libc/sys/sysmec/utime.c
newlib/libc/sys/sysmec/wait.c
newlib/libc/sys/sysmec/write.c
newlib/libc/sys/sysnec810/Makefile.am
newlib/libc/sys/sysnec810/Makefile.in
newlib/libc/sys/sysnec810/aclocal.m4
newlib/libc/sys/sysnec810/configure
newlib/libc/sys/sysnec810/configure.in
newlib/libc/sys/sysnec810/crt0.s
newlib/libc/sys/sysnec810/io.s
newlib/libc/sys/sysnec810/misc.c
newlib/libc/sys/sysnec810/sbrk.c
newlib/libc/sys/sysnec810/write.c
newlib/libc/sys/sysnecv850/Makefile.am
newlib/libc/sys/sysnecv850/Makefile.in
newlib/libc/sys/sysnecv850/_exit.c
newlib/libc/sys/sysnecv850/access.c
newlib/libc/sys/sysnecv850/aclocal.m4
newlib/libc/sys/sysnecv850/chmod.c
newlib/libc/sys/sysnecv850/chown.c
newlib/libc/sys/sysnecv850/close.c
newlib/libc/sys/sysnecv850/configure
newlib/libc/sys/sysnecv850/configure.in
newlib/libc/sys/sysnecv850/creat.c
newlib/libc/sys/sysnecv850/crt0.S
newlib/libc/sys/sysnecv850/crt1.c
newlib/libc/sys/sysnecv850/execv.c
newlib/libc/sys/sysnecv850/execve.c
newlib/libc/sys/sysnecv850/fork.c
newlib/libc/sys/sysnecv850/fstat.c
newlib/libc/sys/sysnecv850/getpid.c
newlib/libc/sys/sysnecv850/gettime.c
newlib/libc/sys/sysnecv850/isatty.c
newlib/libc/sys/sysnecv850/kill.c
newlib/libc/sys/sysnecv850/link.c
newlib/libc/sys/sysnecv850/lseek.c
newlib/libc/sys/sysnecv850/open.c
newlib/libc/sys/sysnecv850/pipe.c
newlib/libc/sys/sysnecv850/read.c
newlib/libc/sys/sysnecv850/sbrk.c
newlib/libc/sys/sysnecv850/stat.c
newlib/libc/sys/sysnecv850/sys/syscall.h
newlib/libc/sys/sysnecv850/time.c
newlib/libc/sys/sysnecv850/times.c
newlib/libc/sys/sysnecv850/trap.S
newlib/libc/sys/sysnecv850/unlink.c
newlib/libc/sys/sysnecv850/utime.c
newlib/libc/sys/sysnecv850/wait.c
newlib/libc/sys/sysnecv850/write.c
newlib/libc/sys/sysvi386/Makefile.am
newlib/libc/sys/sysvi386/Makefile.in
newlib/libc/sys/sysvi386/_exit.s
newlib/libc/sys/sysvi386/_longjmp.s
newlib/libc/sys/sysvi386/_setjmp.s
newlib/libc/sys/sysvi386/access.s
newlib/libc/sys/sysvi386/aclocal.m4
newlib/libc/sys/sysvi386/alarm.s
newlib/libc/sys/sysvi386/brk.s
newlib/libc/sys/sysvi386/cerror.s
newlib/libc/sys/sysvi386/chdir.s
newlib/libc/sys/sysvi386/chmod.s
newlib/libc/sys/sysvi386/close.s
newlib/libc/sys/sysvi386/closedir.c
newlib/libc/sys/sysvi386/configure
newlib/libc/sys/sysvi386/configure.in
newlib/libc/sys/sysvi386/crt0.c
newlib/libc/sys/sysvi386/dup.c
newlib/libc/sys/sysvi386/dup2.c
newlib/libc/sys/sysvi386/exec.c
newlib/libc/sys/sysvi386/execve.s
newlib/libc/sys/sysvi386/fcntl.s
newlib/libc/sys/sysvi386/fork.s
newlib/libc/sys/sysvi386/fpathconf.s
newlib/libc/sys/sysvi386/fps.s
newlib/libc/sys/sysvi386/fpx.c
newlib/libc/sys/sysvi386/fstat.s
newlib/libc/sys/sysvi386/getdents.s
newlib/libc/sys/sysvi386/getegid.s
newlib/libc/sys/sysvi386/geteuid.s
newlib/libc/sys/sysvi386/getgid.s
newlib/libc/sys/sysvi386/getgroups.s
newlib/libc/sys/sysvi386/getpid.s
newlib/libc/sys/sysvi386/getuid.s
newlib/libc/sys/sysvi386/ioctl.s
newlib/libc/sys/sysvi386/isatty.c
newlib/libc/sys/sysvi386/kill.s
newlib/libc/sys/sysvi386/link.s
newlib/libc/sys/sysvi386/lseek.s
newlib/libc/sys/sysvi386/mkdir.s
newlib/libc/sys/sysvi386/open.s
newlib/libc/sys/sysvi386/opendir.c
newlib/libc/sys/sysvi386/pathconf.s
newlib/libc/sys/sysvi386/pause.s
newlib/libc/sys/sysvi386/pipe.s
newlib/libc/sys/sysvi386/read.s
newlib/libc/sys/sysvi386/readdir.c
newlib/libc/sys/sysvi386/rename.s
newlib/libc/sys/sysvi386/rewinddir.c
newlib/libc/sys/sysvi386/rmdir.s
newlib/libc/sys/sysvi386/sbrk.c
newlib/libc/sys/sysvi386/scandir.c
newlib/libc/sys/sysvi386/seekdir.c
newlib/libc/sys/sysvi386/setgid.s
newlib/libc/sys/sysvi386/setuid.s
newlib/libc/sys/sysvi386/sigaction.s
newlib/libc/sys/sysvi386/signal.s
newlib/libc/sys/sysvi386/sigprocmask.s
newlib/libc/sys/sysvi386/sleep.c
newlib/libc/sys/sysvi386/speed.c
newlib/libc/sys/sysvi386/stat.s
newlib/libc/sys/sysvi386/sys/dirent.h
newlib/libc/sys/sysvi386/sys/param.h
newlib/libc/sys/sysvi386/sys/setjmp.h
newlib/libc/sys/sysvi386/sys/termio.h
newlib/libc/sys/sysvi386/sys/termios.h
newlib/libc/sys/sysvi386/sys/utime.h
newlib/libc/sys/sysvi386/sys/utmp.h
newlib/libc/sys/sysvi386/sys/wait.h
newlib/libc/sys/sysvi386/sysconf.s
newlib/libc/sys/sysvi386/tcgetattr.c
newlib/libc/sys/sysvi386/tcline.c
newlib/libc/sys/sysvi386/tcsetattr.c
newlib/libc/sys/sysvi386/telldir.c
newlib/libc/sys/sysvi386/time.s
newlib/libc/sys/sysvi386/times.s
newlib/libc/sys/sysvi386/unlink.s
newlib/libc/sys/sysvi386/utime.s
newlib/libc/sys/sysvi386/wait.s
newlib/libc/sys/sysvi386/waitpid.s
newlib/libc/sys/sysvi386/write.s
newlib/libc/sys/sysvnecv70/Makefile.am
newlib/libc/sys/sysvnecv70/Makefile.in
newlib/libc/sys/sysvnecv70/aclocal.m4
newlib/libc/sys/sysvnecv70/cerror.s
newlib/libc/sys/sysvnecv70/close.s
newlib/libc/sys/sysvnecv70/configure
newlib/libc/sys/sysvnecv70/configure.in
newlib/libc/sys/sysvnecv70/crt0.s
newlib/libc/sys/sysvnecv70/exit.s
newlib/libc/sys/sysvnecv70/fps.s
newlib/libc/sys/sysvnecv70/fpx.c
newlib/libc/sys/sysvnecv70/fstat.s
newlib/libc/sys/sysvnecv70/ioctl.s
newlib/libc/sys/sysvnecv70/isatty.s
newlib/libc/sys/sysvnecv70/lseek.s
newlib/libc/sys/sysvnecv70/open.s
newlib/libc/sys/sysvnecv70/read.s
newlib/libc/sys/sysvnecv70/sbrk.s
newlib/libc/sys/sysvnecv70/sysv60.s
newlib/libc/sys/sysvnecv70/sysvnecv70.tex
newlib/libc/sys/sysvnecv70/write.s
newlib/libc/sys/tic80/Makefile.am
newlib/libc/sys/tic80/Makefile.in
newlib/libc/sys/tic80/aclocal.m4
newlib/libc/sys/tic80/configure
newlib/libc/sys/tic80/configure.in
newlib/libc/sys/tic80/crt0.c
newlib/libc/sys/w65/Makefile.am
newlib/libc/sys/w65/Makefile.in
newlib/libc/sys/w65/aclocal.m4
newlib/libc/sys/w65/configure
newlib/libc/sys/w65/configure.in
newlib/libc/sys/w65/crt0.c
newlib/libc/sys/w65/sys/syscall.h
newlib/libc/sys/w65/syscalls.c
newlib/libc/sys/w65/trap.c
newlib/libc/sys/z8ksim/Makefile.am
newlib/libc/sys/z8ksim/Makefile.in
newlib/libc/sys/z8ksim/aclocal.m4
newlib/libc/sys/z8ksim/configure
newlib/libc/sys/z8ksim/configure.in
newlib/libc/sys/z8ksim/crt0.c
newlib/libc/sys/z8ksim/glue.c
newlib/libc/sys/z8ksim/sys/syscall.h
newlib/libc/syscalls/Makefile.am
newlib/libc/syscalls/Makefile.in
newlib/libc/syscalls/sysclose.c
newlib/libc/syscalls/sysexecve.c
newlib/libc/syscalls/sysfcntl.c
newlib/libc/syscalls/sysfork.c
newlib/libc/syscalls/sysfstat.c
newlib/libc/syscalls/sysgetpid.c
newlib/libc/syscalls/sysgettod.c
newlib/libc/syscalls/syskill.c
newlib/libc/syscalls/syslink.c
newlib/libc/syscalls/syslseek.c
newlib/libc/syscalls/sysopen.c
newlib/libc/syscalls/sysread.c
newlib/libc/syscalls/syssbrk.c
newlib/libc/syscalls/sysstat.c
newlib/libc/syscalls/systimes.c
newlib/libc/syscalls/sysunlink.c
newlib/libc/syscalls/syswait.c
newlib/libc/syscalls/syswrite.c
newlib/libc/time/Makefile.am
newlib/libc/time/Makefile.in
newlib/libc/time/asctime.c
newlib/libc/time/asctime_r.c
newlib/libc/time/clock.c
newlib/libc/time/ctime.c
newlib/libc/time/ctime_r.c
newlib/libc/time/difftime.c
newlib/libc/time/gmtime.c
newlib/libc/time/gmtime_r.c
newlib/libc/time/lcltime.c
newlib/libc/time/lcltime_r.c
newlib/libc/time/mktime.c
newlib/libc/time/strftime.c
newlib/libc/time/time.c
newlib/libc/time/time.tex
newlib/libc/unix/Makefile.am
newlib/libc/unix/Makefile.in
newlib/libc/unix/getcwd.c
newlib/libc/unix/getlogin.c
newlib/libc/unix/getpass.c
newlib/libc/unix/getpwent.c
newlib/libc/unix/getut.c
newlib/libc/unix/sigset.c
newlib/libc/unix/ttyname.c
newlib/libm/Makefile.am
newlib/libm/Makefile.in
newlib/libm/aclocal.m4
newlib/libm/common/Makefile.am
newlib/libm/common/Makefile.in
newlib/libm/common/common.tex
newlib/libm/common/fdlibm.h
newlib/libm/common/s_cbrt.c
newlib/libm/common/s_copysign.c
newlib/libm/common/s_expm1.c
newlib/libm/common/s_finite.c
newlib/libm/common/s_ilogb.c
newlib/libm/common/s_infinity.c
newlib/libm/common/s_lib_ver.c
newlib/libm/common/s_log1p.c
newlib/libm/common/s_logb.c
newlib/libm/common/s_matherr.c
newlib/libm/common/s_modf.c
newlib/libm/common/s_nan.c
newlib/libm/common/s_nextafter.c
newlib/libm/common/s_rint.c
newlib/libm/common/s_scalbn.c
newlib/libm/common/sf_cbrt.c
newlib/libm/common/sf_copysign.c
newlib/libm/common/sf_expm1.c
newlib/libm/common/sf_finite.c
newlib/libm/common/sf_ilogb.c
newlib/libm/common/sf_infinity.c
newlib/libm/common/sf_log1p.c
newlib/libm/common/sf_logb.c
newlib/libm/common/sf_modf.c
newlib/libm/common/sf_nan.c
newlib/libm/common/sf_nextafter.c
newlib/libm/common/sf_rint.c
newlib/libm/common/sf_scalbn.c
newlib/libm/config.h.in
newlib/libm/configure
newlib/libm/configure.in
newlib/libm/libm.texinfo
newlib/libm/math/Makefile.am
newlib/libm/math/Makefile.in
newlib/libm/math/e_acos.c
newlib/libm/math/e_acosh.c
newlib/libm/math/e_asin.c
newlib/libm/math/e_atan2.c
newlib/libm/math/e_atanh.c
newlib/libm/math/e_exp.c
newlib/libm/math/e_fmod.c
newlib/libm/math/e_hypot.c
newlib/libm/math/e_j0.c
newlib/libm/math/e_j1.c
newlib/libm/math/e_jn.c
newlib/libm/math/e_log.c
newlib/libm/math/e_log10.c
newlib/libm/math/e_pow.c
newlib/libm/math/e_rem_pio2.c
newlib/libm/math/e_remainder.c
newlib/libm/math/e_scalb.c
newlib/libm/math/e_sinh.c
newlib/libm/math/e_sqrt.c
newlib/libm/math/ef_acos.c
newlib/libm/math/ef_acosh.c
newlib/libm/math/ef_asin.c
newlib/libm/math/ef_atan2.c
newlib/libm/math/ef_atanh.c
newlib/libm/math/ef_cosh.c
newlib/libm/math/ef_exp.c
newlib/libm/math/ef_fmod.c
newlib/libm/math/ef_hypot.c
newlib/libm/math/ef_j0.c
newlib/libm/math/ef_j1.c
newlib/libm/math/ef_jn.c
newlib/libm/math/ef_log.c
newlib/libm/math/ef_log10.c
newlib/libm/math/ef_pow.c
newlib/libm/math/ef_rem_pio2.c
newlib/libm/math/ef_remainder.c
newlib/libm/math/ef_scalb.c
newlib/libm/math/ef_sinh.c
newlib/libm/math/ef_sqrt.c
newlib/libm/math/er_gamma.c
newlib/libm/math/er_lgamma.c
newlib/libm/math/erf_gamma.c
newlib/libm/math/erf_lgamma.c
newlib/libm/math/k_cos.c
newlib/libm/math/k_rem_pio2.c
newlib/libm/math/k_sin.c
newlib/libm/math/k_standard.c
newlib/libm/math/k_tan.c
newlib/libm/math/kf_cos.c
newlib/libm/math/kf_rem_pio2.c
newlib/libm/math/kf_sin.c
newlib/libm/math/kf_tan.c
newlib/libm/math/math.tex
newlib/libm/math/s_asinh.c
newlib/libm/math/s_atan.c
newlib/libm/math/s_ceil.c
newlib/libm/math/s_cos.c
newlib/libm/math/s_erf.c
newlib/libm/math/s_fabs.c
newlib/libm/math/s_floor.c
newlib/libm/math/s_frexp.c
newlib/libm/math/s_infconst.c
newlib/libm/math/s_isinf.c
newlib/libm/math/s_isnan.c
newlib/libm/math/s_ldexp.c
newlib/libm/math/s_signif.c
newlib/libm/math/s_sin.c
newlib/libm/math/s_tan.c
newlib/libm/math/s_tanh.c
newlib/libm/math/sf_asinh.c
newlib/libm/math/sf_atan.c
newlib/libm/math/sf_ceil.c
newlib/libm/math/sf_cos.c
newlib/libm/math/sf_erf.c
newlib/libm/math/sf_fabs.c
newlib/libm/math/sf_floor.c
newlib/libm/math/sf_frexp.c
newlib/libm/math/sf_isinf.c
newlib/libm/math/sf_isnan.c
newlib/libm/math/sf_ldexp.c
newlib/libm/math/sf_signif.c
newlib/libm/math/sf_sin.c
newlib/libm/math/sf_tan.c
newlib/libm/math/sf_tanh.c
newlib/libm/math/w_acos.c
newlib/libm/math/w_acosh.c
newlib/libm/math/w_asin.c
newlib/libm/math/w_atan2.c
newlib/libm/math/w_atanh.c
newlib/libm/math/w_cabs.c
newlib/libm/math/w_cosh.c
newlib/libm/math/w_drem.c
newlib/libm/math/w_exp.c
newlib/libm/math/w_fmod.c
newlib/libm/math/w_gamma.c
newlib/libm/math/w_hypot.c
newlib/libm/math/w_j0.c
newlib/libm/math/w_j1.c
newlib/libm/math/w_jn.c
newlib/libm/math/w_lgamma.c
newlib/libm/math/w_log.c
newlib/libm/math/w_log10.c
newlib/libm/math/w_pow.c
newlib/libm/math/w_remainder.c
newlib/libm/math/w_scalb.c
newlib/libm/math/w_sinh.c
newlib/libm/math/w_sqrt.c
newlib/libm/math/wf_acos.c
newlib/libm/math/wf_acosh.c
newlib/libm/math/wf_asin.c
newlib/libm/math/wf_atan2.c
newlib/libm/math/wf_atanh.c
newlib/libm/math/wf_cabs.c
newlib/libm/math/wf_cosh.c
newlib/libm/math/wf_drem.c
newlib/libm/math/wf_exp.c
newlib/libm/math/wf_fmod.c
newlib/libm/math/wf_gamma.c
newlib/libm/math/wf_hypot.c
newlib/libm/math/wf_j0.c
newlib/libm/math/wf_j1.c
newlib/libm/math/wf_jn.c
newlib/libm/math/wf_lgamma.c
newlib/libm/math/wf_log.c
newlib/libm/math/wf_log10.c
newlib/libm/math/wf_pow.c
newlib/libm/math/wf_remainder.c
newlib/libm/math/wf_scalb.c
newlib/libm/math/wf_sinh.c
newlib/libm/math/wf_sqrt.c
newlib/libm/math/wr_gamma.c
newlib/libm/math/wr_lgamma.c
newlib/libm/math/wrf_gamma.c
newlib/libm/math/wrf_lgamma.c
newlib/libm/mathfp/Makefile.am
newlib/libm/mathfp/Makefile.in
newlib/libm/mathfp/e_acosh.c
newlib/libm/mathfp/e_atanh.c
newlib/libm/mathfp/e_hypot.c
newlib/libm/mathfp/e_j0.c
newlib/libm/mathfp/e_j1.c
newlib/libm/mathfp/e_remainder.c
newlib/libm/mathfp/e_scalb.c
newlib/libm/mathfp/ef_acosh.c
newlib/libm/mathfp/ef_atanh.c
newlib/libm/mathfp/ef_hypot.c
newlib/libm/mathfp/ef_j0.c
newlib/libm/mathfp/ef_j1.c
newlib/libm/mathfp/ef_remainder.c
newlib/libm/mathfp/ef_scalb.c
newlib/libm/mathfp/er_gamma.c
newlib/libm/mathfp/er_lgamma.c
newlib/libm/mathfp/erf_gamma.c
newlib/libm/mathfp/erf_lgamma.c
newlib/libm/mathfp/mathfp.tex
newlib/libm/mathfp/s_acos.c
newlib/libm/mathfp/s_asin.c
newlib/libm/mathfp/s_asine.c
newlib/libm/mathfp/s_asinh.c
newlib/libm/mathfp/s_atan.c
newlib/libm/mathfp/s_atan2.c
newlib/libm/mathfp/s_atangent.c
newlib/libm/mathfp/s_ceil.c
newlib/libm/mathfp/s_cos.c
newlib/libm/mathfp/s_cosh.c
newlib/libm/mathfp/s_erf.c
newlib/libm/mathfp/s_exp.c
newlib/libm/mathfp/s_fabs.c
newlib/libm/mathfp/s_floor.c
newlib/libm/mathfp/s_fmod.c
newlib/libm/mathfp/s_frexp.c
newlib/libm/mathfp/s_infconst.c
newlib/libm/mathfp/s_isinf.c
newlib/libm/mathfp/s_isnan.c
newlib/libm/mathfp/s_ispos.c
newlib/libm/mathfp/s_ldexp.c
newlib/libm/mathfp/s_log.c
newlib/libm/mathfp/s_log10.c
newlib/libm/mathfp/s_logarithm.c
newlib/libm/mathfp/s_mathcnst.c
newlib/libm/mathfp/s_numtest.c
newlib/libm/mathfp/s_pow.c
newlib/libm/mathfp/s_signif.c
newlib/libm/mathfp/s_sin.c
newlib/libm/mathfp/s_sine.c
newlib/libm/mathfp/s_sineh.c
newlib/libm/mathfp/s_sinf.c
newlib/libm/mathfp/s_sinh.c
newlib/libm/mathfp/s_sqrt.c
newlib/libm/mathfp/s_tan.c
newlib/libm/mathfp/s_tanh.c
newlib/libm/mathfp/sf_acos.c
newlib/libm/mathfp/sf_asin.c
newlib/libm/mathfp/sf_asine.c
newlib/libm/mathfp/sf_asinh.c
newlib/libm/mathfp/sf_atan.c
newlib/libm/mathfp/sf_atan2.c
newlib/libm/mathfp/sf_atangent.c
newlib/libm/mathfp/sf_ceil.c
newlib/libm/mathfp/sf_cos.c
newlib/libm/mathfp/sf_cosh.c
newlib/libm/mathfp/sf_erf.c
newlib/libm/mathfp/sf_exp.c
newlib/libm/mathfp/sf_fabs.c
newlib/libm/mathfp/sf_floor.c
newlib/libm/mathfp/sf_fmod.c
newlib/libm/mathfp/sf_frexp.c
newlib/libm/mathfp/sf_isinf.c
newlib/libm/mathfp/sf_isnan.c
newlib/libm/mathfp/sf_ispos.c
newlib/libm/mathfp/sf_ldexp.c
newlib/libm/mathfp/sf_log.c
newlib/libm/mathfp/sf_log10.c
newlib/libm/mathfp/sf_logarithm.c
newlib/libm/mathfp/sf_numtest.c
newlib/libm/mathfp/sf_pow.c
newlib/libm/mathfp/sf_signif.c
newlib/libm/mathfp/sf_sin.c
newlib/libm/mathfp/sf_sine.c
newlib/libm/mathfp/sf_sineh.c
newlib/libm/mathfp/sf_sinh.c
newlib/libm/mathfp/sf_sqrt.c
newlib/libm/mathfp/sf_tan.c
newlib/libm/mathfp/sf_tanh.c
newlib/libm/mathfp/w_cabs.c
newlib/libm/mathfp/w_drem.c
newlib/libm/mathfp/w_jn.c
newlib/libm/mathfp/wf_cabs.c
newlib/libm/mathfp/wf_drem.c
newlib/libm/mathfp/wf_jn.c
newlib/libm/mathfp/zmath.h
newlib/libm/test/Makefile.in
newlib/libm/test/acos_vec.c
newlib/libm/test/acosf_vec.c
newlib/libm/test/acosh_vec.c
newlib/libm/test/acoshf_vec.c
newlib/libm/test/asin_vec.c
newlib/libm/test/asinf_vec.c
newlib/libm/test/asinh_vec.c
newlib/libm/test/asinhf_vec.c
newlib/libm/test/atan2_vec.c
newlib/libm/test/atan2f_vec.c
newlib/libm/test/atan_vec.c
newlib/libm/test/atanf_vec.c
newlib/libm/test/atanh_vec.c
newlib/libm/test/atanhf_vec.c
newlib/libm/test/ceil_vec.c
newlib/libm/test/ceilf_vec.c
newlib/libm/test/conv_vec.c
newlib/libm/test/convert.c
newlib/libm/test/cos_vec.c
newlib/libm/test/cosf_vec.c
newlib/libm/test/cosh_vec.c
newlib/libm/test/coshf_vec.c
newlib/libm/test/dcvt.c
newlib/libm/test/dvec.c
newlib/libm/test/erf_vec.c
newlib/libm/test/erfc_vec.c
newlib/libm/test/erfcf_vec.c
newlib/libm/test/erff_vec.c
newlib/libm/test/exp_vec.c
newlib/libm/test/expf_vec.c
newlib/libm/test/fabs_vec.c
newlib/libm/test/fabsf_vec.c
newlib/libm/test/floor_vec.c
newlib/libm/test/floorf_vec.c
newlib/libm/test/fmod_vec.c
newlib/libm/test/fmodf_vec.c
newlib/libm/test/gamma_vec.c
newlib/libm/test/gammaf_vec.c
newlib/libm/test/hypot_vec.c
newlib/libm/test/hypotf_vec.c
newlib/libm/test/iconv_vec.c
newlib/libm/test/j0_vec.c
newlib/libm/test/j0f_vec.c
newlib/libm/test/j1_vec.c
newlib/libm/test/j1f_vec.c
newlib/libm/test/jn_vec.c
newlib/libm/test/jnf_vec.c
newlib/libm/test/log10_vec.c
newlib/libm/test/log10f_vec.c
newlib/libm/test/log1p_vec.c
newlib/libm/test/log1pf_vec.c
newlib/libm/test/log2_vec.c
newlib/libm/test/log2f_vec.c
newlib/libm/test/log_vec.c
newlib/libm/test/logf_vec.c
newlib/libm/test/math.c
newlib/libm/test/math2.c
newlib/libm/test/sin_vec.c
newlib/libm/test/sinf_vec.c
newlib/libm/test/sinh_vec.c
newlib/libm/test/sinhf_vec.c
newlib/libm/test/sprint_ivec.c
newlib/libm/test/sprint_vec.c
newlib/libm/test/sqrt_vec.c
newlib/libm/test/sqrtf_vec.c
newlib/libm/test/string.c
newlib/libm/test/tan_vec.c
newlib/libm/test/tanf_vec.c
newlib/libm/test/tanh_vec.c
newlib/libm/test/tanhf_vec.c
newlib/libm/test/test.c
newlib/libm/test/test.h
newlib/libm/test/test_ieee.c
newlib/libm/test/test_is.c
newlib/libm/test/y0_vec.c
newlib/libm/test/y0f_vec.c
newlib/libm/test/y1_vec.c
newlib/libm/test/y1f_vec.c
newlib/libm/test/yn_vec.c
newlib/libm/test/ynf_vec.c
setup.com
symlink-tree
texinfo/texinfo.tex
winsup/CYGWIN_LICENSE
winsup/ChangeLog
winsup/MAINTAINERS
winsup/Makefile.common
winsup/Makefile.in
winsup/configure
winsup/configure.in
winsup/cygwin/CYGWIN_LICENSE
winsup/cygwin/ChangeLog
winsup/cygwin/ChangeLog-1995
winsup/cygwin/ChangeLog-1996
winsup/cygwin/ChangeLog-1997
winsup/cygwin/ChangeLog-1998
winsup/cygwin/ChangeLog-1999
winsup/cygwin/Makefile.in
winsup/cygwin/ROADMAP
winsup/cygwin/acconfig.h
winsup/cygwin/ansi.sgml
winsup/cygwin/assert.cc
winsup/cygwin/autoload.h
winsup/cygwin/binmode.c
winsup/cygwin/config.h.in
winsup/cygwin/config/i386/longjmp.c
winsup/cygwin/config/i386/makefrag
winsup/cygwin/config/i386/profile.h
winsup/cygwin/config/i386/setjmp.c
winsup/cygwin/configure
winsup/cygwin/configure.in
winsup/cygwin/cygerrno.h
winsup/cygwin/cygrun.c
winsup/cygwin/cygwin.din
winsup/cygwin/dcrt0.cc
winsup/cygwin/debug.cc
winsup/cygwin/debug.h
winsup/cygwin/delqueue.cc
winsup/cygwin/dir.cc
winsup/cygwin/dlfcn.cc
winsup/cygwin/dll_init.cc
winsup/cygwin/dll_init.h
winsup/cygwin/dll_init.sgml
winsup/cygwin/dtable.cc
winsup/cygwin/dtable.h
winsup/cygwin/dtable.sgml
winsup/cygwin/environ.cc
winsup/cygwin/errno.cc
winsup/cygwin/exceptions.cc
winsup/cygwin/exec.cc
winsup/cygwin/external.cc
winsup/cygwin/external.sgml
winsup/cygwin/fcntl.cc
winsup/cygwin/fhandler.cc
winsup/cygwin/fhandler.h
winsup/cygwin/fhandler_console.cc
winsup/cygwin/fhandler_floppy.cc
winsup/cygwin/fhandler_random.cc
winsup/cygwin/fhandler_raw.cc
winsup/cygwin/fhandler_serial.cc
winsup/cygwin/fhandler_tape.cc
winsup/cygwin/fhandler_termios.cc
winsup/cygwin/fhandler_tty.cc
winsup/cygwin/fhandler_windows.cc
winsup/cygwin/fhandler_zero.cc
winsup/cygwin/fork.cc
winsup/cygwin/gcrt0.c
winsup/cygwin/glob.c
winsup/cygwin/gmon.c
winsup/cygwin/gmon.h
winsup/cygwin/grp.cc
winsup/cygwin/heap.cc
winsup/cygwin/include/a.out.h
winsup/cygwin/include/arpa/ftp.h
winsup/cygwin/include/arpa/inet.h
winsup/cygwin/include/arpa/telnet.h
winsup/cygwin/include/asm/byteorder.h
winsup/cygwin/include/asm/socket.h
winsup/cygwin/include/asm/types.h
winsup/cygwin/include/cygwin/acl.h
winsup/cygwin/include/cygwin/core_dump.h
winsup/cygwin/include/cygwin/cygwin_dll.h
winsup/cygwin/include/cygwin/icmp.h
winsup/cygwin/include/cygwin/if.h
winsup/cygwin/include/cygwin/in.h
winsup/cygwin/include/cygwin/in_systm.h
winsup/cygwin/include/cygwin/ip.h
winsup/cygwin/include/cygwin/mtio.h
winsup/cygwin/include/cygwin/rdevio.h
winsup/cygwin/include/cygwin/socket.h
winsup/cygwin/include/cygwin/sockios.h
winsup/cygwin/include/cygwin/types.h
winsup/cygwin/include/cygwin/uio.h
winsup/cygwin/include/cygwin/version.h
winsup/cygwin/include/dlfcn.h
winsup/cygwin/include/exceptions.h
winsup/cygwin/include/fcntl.h
winsup/cygwin/include/features.h
winsup/cygwin/include/getopt.h
winsup/cygwin/include/glob.h
winsup/cygwin/include/icmp.h
winsup/cygwin/include/io.h
winsup/cygwin/include/lastlog.h
winsup/cygwin/include/limits.h
winsup/cygwin/include/mapi.h
winsup/cygwin/include/memory.h
winsup/cygwin/include/mntent.h
winsup/cygwin/include/net/if.h
winsup/cygwin/include/netdb.h
winsup/cygwin/include/netinet/in.h
winsup/cygwin/include/netinet/in_systm.h
winsup/cygwin/include/netinet/ip.h
winsup/cygwin/include/netinet/ip_icmp.h
winsup/cygwin/include/paths.h
winsup/cygwin/include/poll.h
winsup/cygwin/include/pthread.h
winsup/cygwin/include/rapi.h
winsup/cygwin/include/strings.h
winsup/cygwin/include/sys/acl.h
winsup/cygwin/include/sys/cdefs.h
winsup/cygwin/include/sys/copying.dj
winsup/cygwin/include/sys/cygwin.h
winsup/cygwin/include/sys/file.h
winsup/cygwin/include/sys/ioctl.h
winsup/cygwin/include/sys/mman.h
winsup/cygwin/include/sys/mount.h
winsup/cygwin/include/sys/mtio.h
winsup/cygwin/include/sys/poll.h
winsup/cygwin/include/sys/procfs.h
winsup/cygwin/include/sys/resource.h
winsup/cygwin/include/sys/select.h
winsup/cygwin/include/sys/smallprint.h
winsup/cygwin/include/sys/socket.h
winsup/cygwin/include/sys/strace.h
winsup/cygwin/include/sys/syslog.h
winsup/cygwin/include/sys/sysmacros.h
winsup/cygwin/include/sys/termio.h
winsup/cygwin/include/sys/termios.h
winsup/cygwin/include/sys/ttychars.h
winsup/cygwin/include/sys/uio.h
winsup/cygwin/include/sys/un.h
winsup/cygwin/include/sys/utsname.h
winsup/cygwin/include/sys/vfs.h
winsup/cygwin/include/sys/wait.h
winsup/cygwin/include/syslog.h
winsup/cygwin/include/termio.h
winsup/cygwin/include/tzfile.h
winsup/cygwin/include/wchar.h
winsup/cygwin/init.cc
winsup/cygwin/ioctl.cc
winsup/cygwin/lib/_cygwin_crt0_common.cc
winsup/cygwin/lib/crt0.h
winsup/cygwin/lib/cygwin_attach_dll.c
winsup/cygwin/lib/cygwin_crt0.c
winsup/cygwin/lib/dll_entry.c
winsup/cygwin/lib/dll_main.cc
winsup/cygwin/lib/getopt.c
winsup/cygwin/lib/libcmain.c
winsup/cygwin/lib/premain0.c
winsup/cygwin/lib/premain1.c
winsup/cygwin/lib/premain2.c
winsup/cygwin/lib/premain3.c
winsup/cygwin/localtime.c
winsup/cygwin/malloc_wrapper.cc
winsup/cygwin/mcount.c
winsup/cygwin/misc-std.sgml
winsup/cygwin/mkvers.sh
winsup/cygwin/mmap.cc
winsup/cygwin/net.cc
winsup/cygwin/ntea.cc
winsup/cygwin/passwd.cc
winsup/cygwin/path.cc
winsup/cygwin/path.h
winsup/cygwin/path.sgml
winsup/cygwin/perthread.h
winsup/cygwin/pinfo.cc
winsup/cygwin/pinfo.h
winsup/cygwin/pipe.cc
winsup/cygwin/poll.cc
winsup/cygwin/posix.sgml
winsup/cygwin/profil.c
winsup/cygwin/profil.h
winsup/cygwin/pthread.cc
winsup/cygwin/regexp/COPYRIGHT
winsup/cygwin/regexp/README
winsup/cygwin/regexp/regerror.c
winsup/cygwin/regexp/regexp.3
winsup/cygwin/regexp/regexp.c
winsup/cygwin/regexp/regexp.h
winsup/cygwin/regexp/regmagic.h
winsup/cygwin/regexp/regsub.c
winsup/cygwin/registry.cc
winsup/cygwin/resource.cc
winsup/cygwin/scandir.cc
winsup/cygwin/security.cc
winsup/cygwin/select.cc
winsup/cygwin/select.h
winsup/cygwin/shared.cc
winsup/cygwin/shared.h
winsup/cygwin/shared.sgml
winsup/cygwin/signal.cc
winsup/cygwin/sigproc.cc
winsup/cygwin/sigproc.h
winsup/cygwin/smallprint.c
winsup/cygwin/spawn.cc
winsup/cygwin/strace.cc
winsup/cygwin/strsep.cc
winsup/cygwin/sync.cc
winsup/cygwin/sync.h
winsup/cygwin/syscalls.cc
winsup/cygwin/sysconf.cc
winsup/cygwin/syslog.cc
winsup/cygwin/termios.cc
winsup/cygwin/test.c
winsup/cygwin/testsuite/README
winsup/cygwin/testsuite/config/default.exp
winsup/cygwin/testsuite/winsup.api/crlf.c
winsup/cygwin/testsuite/winsup.api/devzero.c
winsup/cygwin/testsuite/winsup.api/iospeed.c
winsup/cygwin/testsuite/winsup.api/samples/sample-pass.c
winsup/cygwin/testsuite/winsup.api/samples/xf-sample-fail.c
winsup/cygwin/testsuite/winsup.api/samples/xf-sample-miscompile.c
winsup/cygwin/testsuite/winsup.api/winsup.exp
winsup/cygwin/textmode.c
winsup/cygwin/thread.cc
winsup/cygwin/thread.h
winsup/cygwin/times.cc
winsup/cygwin/tty.cc
winsup/cygwin/tz_posixrules.h
winsup/cygwin/uinfo.cc
winsup/cygwin/uname.cc
winsup/cygwin/wait.cc
winsup/cygwin/window.cc
winsup/cygwin/winsup.h
winsup/cygwin/winver.rc
winsup/doc/ChangeLog
winsup/doc/Makefile.in
winsup/doc/calls.texinfo
winsup/doc/changes.texinfo
winsup/doc/configure
winsup/doc/configure.in
winsup/doc/copy.texinfo
winsup/doc/cygwin-api.in.sgml
winsup/doc/cygwin-ug-net.in.sgml
winsup/doc/cygwin-ug.in.sgml
winsup/doc/cygwinenv.sgml
winsup/doc/dll.sgml
winsup/doc/doctool.c
winsup/doc/doctool.txt
winsup/doc/faq.texinfo
winsup/doc/fhandler-tut.txt
winsup/doc/filemodes.sgml
winsup/doc/gcc.sgml
winsup/doc/gdb.sgml
winsup/doc/history.texinfo
winsup/doc/how.texinfo
winsup/doc/install.texinfo
winsup/doc/legal.sgml
winsup/doc/ntsec.sgml
winsup/doc/overview.sgml
winsup/doc/overview2.sgml
winsup/doc/pathnames.sgml
winsup/doc/programming.sgml
winsup/doc/readme.texinfo
winsup/doc/relnotes.texinfo
winsup/doc/setup-net.sgml
winsup/doc/setup.sgml
winsup/doc/setup2.sgml
winsup/doc/sites.texinfo
winsup/doc/textbinary.sgml
winsup/doc/using.sgml
winsup/doc/what.texinfo
winsup/doc/who.texinfo
winsup/doc/windres.sgml
winsup/mingw/CRT_noglob.c
winsup/mingw/CRTfmode.c
winsup/mingw/CRTglob.c
winsup/mingw/CRTinit.c
winsup/mingw/ChangeLog
winsup/mingw/Makefile.in
winsup/mingw/configure
winsup/mingw/configure.in
winsup/mingw/crt1.c
winsup/mingw/crtdll.def
winsup/mingw/crtmt.c
winsup/mingw/crtst.c
winsup/mingw/ctype_old.c
winsup/mingw/dirent.c
winsup/mingw/dllcrt1.c
winsup/mingw/dllmain.c
winsup/mingw/gccmain.c
winsup/mingw/include/_mingw.h
winsup/mingw/include/assert.h
winsup/mingw/include/conio.h
winsup/mingw/include/ctype.h
winsup/mingw/include/dir.h
winsup/mingw/include/direct.h
winsup/mingw/include/dirent.h
winsup/mingw/include/dos.h
winsup/mingw/include/errno.h
winsup/mingw/include/excpt.h
winsup/mingw/include/fcntl.h
winsup/mingw/include/float.h
winsup/mingw/include/io.h
winsup/mingw/include/limits.h
winsup/mingw/include/locale.h
winsup/mingw/include/malloc.h
winsup/mingw/include/math.h
winsup/mingw/include/mem.h
winsup/mingw/include/memory.h
winsup/mingw/include/process.h
winsup/mingw/include/setjmp.h
winsup/mingw/include/share.h
winsup/mingw/include/signal.h
winsup/mingw/include/stdarg.h
winsup/mingw/include/stddef.h
winsup/mingw/include/stdio.h
winsup/mingw/include/stdlib.h
winsup/mingw/include/string.h
winsup/mingw/include/sys/fcntl.h
winsup/mingw/include/sys/file.h
winsup/mingw/include/sys/locking.h
winsup/mingw/include/sys/stat.h
winsup/mingw/include/sys/time.h
winsup/mingw/include/sys/timeb.h
winsup/mingw/include/sys/types.h
winsup/mingw/include/sys/unistd.h
winsup/mingw/include/sys/utime.h
winsup/mingw/include/tchar.h
winsup/mingw/include/time.h
winsup/mingw/include/unistd.h
winsup/mingw/include/values.h
winsup/mingw/include/varargs.h
winsup/mingw/include/wchar.h
winsup/mingw/include/wctype.h
winsup/mingw/init.c
winsup/mingw/jamfile
winsup/mingw/main.c
winsup/mingw/moldname-crtdll.def
winsup/mingw/moldname-msvcrt.def
winsup/mingw/moldname.def
winsup/mingw/moldname.def.in
winsup/mingw/msvcrt.def
winsup/mingw/msvcrt20.def
winsup/mingw/msvcrt40.def
winsup/mingw/mthr.c
winsup/mingw/mthr_init.c
winsup/mingw/mthr_stub.c
winsup/mingw/profile/ChangeLog
winsup/mingw/profile/Makefile.in
winsup/mingw/profile/configure
winsup/mingw/profile/configure.in
winsup/mingw/profile/gcrt0.c
winsup/mingw/profile/gmon.c
winsup/mingw/profile/gmon.h
winsup/mingw/profile/mcount.c
winsup/mingw/profile/profil.c
winsup/mingw/profile/profil.h
winsup/mingw/profile/profile.h
winsup/mingw/readme.txt
winsup/mingw/samples/dirent/jamfile
winsup/mingw/samples/dirent/test.c
winsup/mingw/samples/dlltest/dll.c
winsup/mingw/samples/dlltest/dll.def
winsup/mingw/samples/dlltest/dll.h
winsup/mingw/samples/dlltest/exe.c
winsup/mingw/samples/dlltest/exe.exp
winsup/mingw/samples/dlltest/expexe.c
winsup/mingw/samples/dlltest/expexe.def
winsup/mingw/samples/dlltest/jamfile
winsup/mingw/samples/dlltest/loaddll.c
winsup/mingw/samples/dlltest/loadexe.c
winsup/mingw/samples/dlltest/readme.txt
winsup/mingw/samples/dlltest/silly.cpp
winsup/mingw/samples/dlltest/silly.def
winsup/mingw/samples/dlltest/silly.exp
winsup/mingw/samples/dlltest/silly.h
winsup/mingw/samples/dlltest/sillydll.cpp
winsup/mingw/samples/filehand/filehand.c
winsup/mingw/samples/filehand/jamfile
winsup/mingw/samples/filehand/junk.txt
winsup/mingw/samples/fixargv/fixargv.c
winsup/mingw/samples/fixargv/fixargv.h
winsup/mingw/samples/fixargv/readme.txt
winsup/mingw/samples/fmode/all.c
winsup/mingw/samples/fmode/jamfile
winsup/mingw/samples/fmode/readme.txt
winsup/mingw/samples/fmode/test.c
winsup/mingw/samples/globbing/glob.c
winsup/mingw/samples/globbing/jamfile
winsup/mingw/samples/globbing/noglob.c
winsup/mingw/samples/globbing/readme.txt
winsup/mingw/samples/print/jamfile
winsup/mingw/samples/print/prntest.c
winsup/mingw/samples/seh/eh3.c
winsup/mingw/samples/seh/exutil.c
winsup/mingw/samples/seh/exutil.def
winsup/mingw/samples/seh/exutil.h
winsup/mingw/samples/seh/jamfile
winsup/mingw/samples/seh/sehfix.c
winsup/mingw/samples/seh/sehsub.c
winsup/mingw/samples/seh/sehtest.c
winsup/mingw/samples/simpledll/dll.c
winsup/mingw/samples/simpledll/dll.cpp
winsup/mingw/samples/simpledll/dll.def
winsup/mingw/samples/simpledll/exe.c
winsup/mingw/samples/simpledll/jamfile
winsup/mingw/samples/simpledll/makedll.bat
winsup/mingw/samples/test/jamfile
winsup/mingw/samples/test/test.c
winsup/mingw/samples/wintest/jamfile
winsup/mingw/samples/wintest/test.c
winsup/mingw/string_old.c
winsup/testsuite/README
winsup/testsuite/config/default.exp
winsup/testsuite/winsup.api/crlf.c
winsup/testsuite/winsup.api/devzero.c
winsup/testsuite/winsup.api/iospeed.c
winsup/testsuite/winsup.api/samples/sample-fail.c
winsup/testsuite/winsup.api/samples/sample-miscompile.c
winsup/testsuite/winsup.api/samples/sample-pass.c
winsup/testsuite/winsup.api/winsup.exp
winsup/utils/ChangeLog
winsup/utils/Makefile.in
winsup/utils/aclocal.m4
winsup/utils/configure
winsup/utils/configure.in
winsup/utils/cygcheck.cc
winsup/utils/cygpath.cc
winsup/utils/dumper.cc
winsup/utils/dumper.h
winsup/utils/getfacl.c
winsup/utils/kill.cc
winsup/utils/mkgroup.c
winsup/utils/mkpasswd.c
winsup/utils/module_info.cc
winsup/utils/mount.cc
winsup/utils/parse_pe.cc
winsup/utils/passwd.c
winsup/utils/ps.cc
winsup/utils/regtool.cc
winsup/utils/setfacl.c
winsup/utils/strace.cc
winsup/utils/umount.cc
winsup/utils/utils.sgml
winsup/w32api/ChangeLog
winsup/w32api/Makefile.in
winsup/w32api/README
winsup/w32api/TODO
winsup/w32api/config.guess
winsup/w32api/config.sub
winsup/w32api/configure
winsup/w32api/configure.in
winsup/w32api/include/basetyps.h
winsup/w32api/include/cderr.h
winsup/w32api/include/cguid.h
winsup/w32api/include/commctrl.h
winsup/w32api/include/commdlg.h
winsup/w32api/include/cpl.h
winsup/w32api/include/cplext.h
winsup/w32api/include/custcntl.h
winsup/w32api/include/dbt.h
winsup/w32api/include/dde.h
winsup/w32api/include/ddeml.h
winsup/w32api/include/dlgs.h
winsup/w32api/include/excpt.h
winsup/w32api/include/httpext.h
winsup/w32api/include/imagehlp.h
winsup/w32api/include/imm.h
winsup/w32api/include/initguid.h
winsup/w32api/include/intshcut.h
winsup/w32api/include/isguids.h
winsup/w32api/include/largeint.h
winsup/w32api/include/lm.h
winsup/w32api/include/lmaccess.h
winsup/w32api/include/lmalert.h
winsup/w32api/include/lmapibuf.h
winsup/w32api/include/lmat.h
winsup/w32api/include/lmaudit.h
winsup/w32api/include/lmbrowsr.h
winsup/w32api/include/lmchdev.h
winsup/w32api/include/lmconfig.h
winsup/w32api/include/lmcons.h
winsup/w32api/include/lmerr.h
winsup/w32api/include/lmerrlog.h
winsup/w32api/include/lmmsg.h
winsup/w32api/include/lmremutl.h
winsup/w32api/include/lmrepl.h
winsup/w32api/include/lmserver.h
winsup/w32api/include/lmshare.h
winsup/w32api/include/lmsname.h
winsup/w32api/include/lmstats.h
winsup/w32api/include/lmsvc.h
winsup/w32api/include/lmuse.h
winsup/w32api/include/lmuseflg.h
winsup/w32api/include/lmwksta.h
winsup/w32api/include/lzexpand.h
winsup/w32api/include/mciavi.h
winsup/w32api/include/mcx.h
winsup/w32api/include/mmsystem.h
winsup/w32api/include/nb30.h
winsup/w32api/include/nddeapi.h
winsup/w32api/include/nspapi.h
winsup/w32api/include/oaidl.h
winsup/w32api/include/objbase.h
winsup/w32api/include/objfwd.h
winsup/w32api/include/objidl.h
winsup/w32api/include/ocidl.h
winsup/w32api/include/ole.h
winsup/w32api/include/ole2.h
winsup/w32api/include/ole2ver.h
winsup/w32api/include/oleauto.h
winsup/w32api/include/olectl.h
winsup/w32api/include/olectlid.h
winsup/w32api/include/oledlg.h
winsup/w32api/include/oleidl.h
winsup/w32api/include/pbt.h
winsup/w32api/include/poppack.h
winsup/w32api/include/prsht.h
winsup/w32api/include/psapi.h
winsup/w32api/include/pshpack1.h
winsup/w32api/include/pshpack2.h
winsup/w32api/include/pshpack4.h
winsup/w32api/include/pshpack8.h
winsup/w32api/include/rapi.h
winsup/w32api/include/regstr.h
winsup/w32api/include/richedit.h
winsup/w32api/include/richole.h
winsup/w32api/include/rpc.h
winsup/w32api/include/rpcdce.h
winsup/w32api/include/rpcdce2.h
winsup/w32api/include/rpcdcep.h
winsup/w32api/include/rpcndr.h
winsup/w32api/include/rpcnsi.h
winsup/w32api/include/rpcnsip.h
winsup/w32api/include/rpcnterr.h
winsup/w32api/include/rpcproxy.h
winsup/w32api/include/scrnsave.h
winsup/w32api/include/shellapi.h
winsup/w32api/include/shlguid.h
winsup/w32api/include/shlobj.h
winsup/w32api/include/sql.h
winsup/w32api/include/sqlext.h
winsup/w32api/include/sqltypes.h
winsup/w32api/include/tlhelp32.h
winsup/w32api/include/unknwn.h
winsup/w32api/include/userenv.h
winsup/w32api/include/winbase.h
winsup/w32api/include/wincon.h
winsup/w32api/include/wincrypt.h
winsup/w32api/include/windef.h
winsup/w32api/include/windows.h
winsup/w32api/include/windowsx.h
winsup/w32api/include/winerror.h
winsup/w32api/include/wingdi.h
winsup/w32api/include/wininet.h
winsup/w32api/include/winioctl.h
winsup/w32api/include/winnetwk.h
winsup/w32api/include/winnls.h
winsup/w32api/include/winnt.h
winsup/w32api/include/winperf.h
winsup/w32api/include/winreg.h
winsup/w32api/include/winresrc.h
winsup/w32api/include/winsock.h
winsup/w32api/include/winsock2.h
winsup/w32api/include/winspool.h
winsup/w32api/include/winsvc.h
winsup/w32api/include/winuser.h
winsup/w32api/include/winver.h
winsup/w32api/include/wtypes.h
winsup/w32api/include/zmouse.h
winsup/w32api/install-sh
winsup/w32api/lib/Makefile.in
winsup/w32api/lib/advapi32.def
winsup/w32api/lib/cap.def
winsup/w32api/lib/comctl32.def
winsup/w32api/lib/comdlg32.def
winsup/w32api/lib/ctl3d32.def
winsup/w32api/lib/d3dim.def
winsup/w32api/lib/d3drm.def
winsup/w32api/lib/d3dxof.def
winsup/w32api/lib/ddraw.def
winsup/w32api/lib/dinput.c
winsup/w32api/lib/dinput.def
winsup/w32api/lib/dlcapi.def
winsup/w32api/lib/dplayx.def
winsup/w32api/lib/dsetup.def
winsup/w32api/lib/dsound.def
winsup/w32api/lib/dxguid.c
winsup/w32api/lib/gdi32.def
winsup/w32api/lib/glaux.def
winsup/w32api/lib/glu32.def
winsup/w32api/lib/glut.def
winsup/w32api/lib/glut32.def
winsup/w32api/lib/imagehlp.def
winsup/w32api/lib/imm32.def
winsup/w32api/lib/kernel32.def
winsup/w32api/lib/largeint.c
winsup/w32api/lib/lz32.def
winsup/w32api/lib/mapi32.def
winsup/w32api/lib/mfcuia32.def
winsup/w32api/lib/mgmtapi.def
winsup/w32api/lib/mpr.def
winsup/w32api/lib/msacm32.def
winsup/w32api/lib/mswsock.def
winsup/w32api/lib/nddeapi.def
winsup/w32api/lib/netapi32.def
winsup/w32api/lib/odbc32.def
winsup/w32api/lib/ole32.def
winsup/w32api/lib/oleaut32.def
winsup/w32api/lib/olecli32.def
winsup/w32api/lib/oledlg.def
winsup/w32api/lib/olepro32.def
winsup/w32api/lib/olesvr32.def
winsup/w32api/lib/opengl32.def
winsup/w32api/lib/penwin32.def
winsup/w32api/lib/pkpd32.def
winsup/w32api/lib/psapi.def
winsup/w32api/lib/rapi.def
winsup/w32api/lib/rasapi32.def
winsup/w32api/lib/res.rc
winsup/w32api/lib/rpcdce4.def
winsup/w32api/lib/rpcns4.def
winsup/w32api/lib/rpcrt4.def
winsup/w32api/lib/scrnsave.c
winsup/w32api/lib/shell32.c
winsup/w32api/lib/shell32.def
winsup/w32api/lib/svrapi.def
winsup/w32api/lib/tapi32.def
winsup/w32api/lib/test.c
winsup/w32api/lib/th32.def
winsup/w32api/lib/thunk32.def
winsup/w32api/lib/url.def
winsup/w32api/lib/user32.def
winsup/w32api/lib/userenv.def
winsup/w32api/lib/uuid.c
winsup/w32api/lib/vdmdbg.def
winsup/w32api/lib/version.def
winsup/w32api/lib/vfw32.def
winsup/w32api/lib/win32spl.def
winsup/w32api/lib/wininet.def
winsup/w32api/lib/winmm.def
winsup/w32api/lib/winspool.def
winsup/w32api/lib/winstrm.def
winsup/w32api/lib/wow32.def
winsup/w32api/lib/ws2_32.def
winsup/w32api/lib/wsock32.def
winsup/w32api/lib/wst.def
ylwrap
Diffstat (limited to 'libgloss/mips')
33 files changed, 0 insertions, 6497 deletions
diff --git a/libgloss/mips/Makefile.in b/libgloss/mips/Makefile.in deleted file mode 100644 index ff88059..0000000 --- a/libgloss/mips/Makefile.in +++ /dev/null @@ -1,233 +0,0 @@ -# Copyright (c) 1995, 1996, 1997, 1998, 1999 Cygnus Support -# -# The authors hereby grant permission to use, copy, modify, distribute, -# and license this software and its documentation for any purpose, provided -# that existing copyright notices are retained in all copies and that this -# notice is included verbatim in any distributions. No written agreement, -# license, or royalty fee is required for any of the authorized uses. -# Modifications to this software may be copyrighted by their authors -# and need not follow the licensing terms described here, provided that -# the new terms are clearly indicated on the first page of each file where -# they apply. - -VPATH = @srcdir@ -srcdir = @srcdir@ -objdir = . -srcroot = $(srcdir)/../.. -objroot = $(objdir)/../.. - -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -host_alias = @host_alias@ -target_alias = @target_alias@ -program_transform_name = @program_transform_name@ - -bindir = @bindir@ -libdir = @libdir@ -tooldir = $(exec_prefix)/$(target_alias) - -# Multilib support variables. -# TOP is used instead of MULTI{BUILD,SRC}TOP. -MULTIDIRS = -MULTISUBDIR = -MULTIDO = true -MULTICLEAN = true - -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -SHELL = /bin/sh - -CC = @CC@ - -#AS = @AS@ -AS = `if [ -f ${objroot}/../gas/as.new ] ; \ - then echo ${objroot}/../gas/as.new ; \ - else echo as ; fi` - -AR = @AR@ - -#LD = @LD@ -LD = `if [ -f ${objroot}/../ld/ld.new ] ; \ - then echo ${objroot}/../ld/ld.new ; \ - else echo ld ; fi` - -RANLIB = @RANLIB@ - -OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \ - then echo ${objroot}/../binutils/objdump ; \ - else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi` -OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \ - then echo ${objroot}/../binutils/objcopy ; \ - else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi` - -CRT0 = @crt0@ -PCRT0 = @pcrt0@ -GENOBJS = syscalls.o fstat.o getpid.o isatty.o kill.o \ - lseek.o print.o putnum.o stat.o unlink.o -IDTOBJS = idtmon.o @part_specific_obj@ ${GENOBJS} -PMONOBJS = pmon.o @part_specific_obj@ ${GENOBJS} -LSIOBJS = lsipmon.o @part_specific_obj@ ${GENOBJS} -DVEOBJS = open.o close.o dvemon.o read.o write.o @part_specific_obj@ ${GENOBJS} -JMR3904OBJS = open.o close.o jmr3904-io.o read.o write.o \ - @part_specific_obj@ ${GENOBJS} - -# Nullmon cannot support read and write, but the test cases pull them in via libs -NULLMONOBJS = nullmon.o @part_specific_obj@ ${GENOBJS} - -CFLAGS = -g - -GCC_LDFLAGS = `if [ -d ${objroot}/../gcc ] ; \ - then echo -L${objroot}/../gcc ; fi` - -SCRIPTS = @script_list@ -BSP = @bsp_list@ - -PART_SPECIFIC_DEFINES = @part_specific_defines@ - -# Host specific makefile fragment comes in here. -@host_makefile_frag@ - -# -# build a test program for each target board. Just trying to get -# it to link is a good test, so we ignore all the errors for now. -# - -all: ${CRT0} ${PCRT0} test.o ${BSP} - -# -# here's where we build the board support packages for each target -# -mipsidt.o: $(IDTOBJS) - ${LD} -r $(IDTOBJS) -o $@ - -mipspmon.o: $(PMONOBJS) - ${LD} -r $(PMONOBJS) -o $@ - -mipslsi.o: $(PMONOBJS) - ${LD} -r $(LSIOBJS) -o $@ - -libidt.a: $(IDTOBJS) - ${AR} ${ARFLAGS} $@ $(IDTOBJS) - ${RANLIB} $@ - -libpmon.a: $(PMONOBJS) - ${AR} ${ARFLAGS} $@ $(PMONOBJS) - ${RANLIB} $@ - -liblsi.a: $(LSIOBJS) - ${AR} ${ARFLAGS} $@ $(LSIOBJS) - ${RANLIB} $@ - -libdve.a: $(DVEOBJS) - ${AR} ${ARFLAGS} $@ $(DVEOBJS) - ${RANLIB} $@ - -libjmr3904.a: $(JMR3904OBJS) - ${AR} ${ARFLAGS} $@ $(JMR3904OBJS) - ${RANLIB} $@ - -# nullmon.a , This is what you want if you want crt0 but NO mon services -# Supports GDB sim testing, board bringups, ICE operation. -libnullmon.a: $(NULLMONOBJS) - ${AR} ${ARFLAGS} $@ $(NULLMONOBJS) - ${RANLIB} $@ - - -# compile a fully linked binary. The -Wl,-T*.ld is for the linker -# script. By using -Wl, the linker script is put on the proper place -# in the comand line for ld, and all the symbols will get fully -# resolved. - -test: $(OBJS) ${BSP} pmon-test idt-test - @echo Done... - -dtor.o: $(srcdir)/dtor.C - $(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) -o $@ -c $< -dtor.x: dtor.o ${CRT0} ${srcdir}/pmon.ld Makefile libpmon.a - ${CC} $(CFLAGS_FOR_TARGET) -L${srcdir} -L${objdir} \ - dtor.o -o $@ $(NEWLIB_LDFLAGS) -N -Wl,-Tpmon.ld - -pmon-test.x: test.o ${CRT0} Makefile libpmon.a - ${CC} $(CFLAGS_FOR_TARGET) -L${srcdir} -L${objdir} \ - test.o -o $@ $(NEWLIB_LDFLAGS) -Wl,-Tpmon.ld -pmon-test.srec: pmon-test.x - $(OBJCOPY) -O srec pmon-test.x $@ -pmon-test.dis: pmon-test.x - @rm -fr pmon-test.dis - $(OBJDUMP) -d pmon-test.x > $@ -pmon-test: pmon-test.srec pmon-test.dis - -idt-test.x: test.o ${CRT0} Makefile libidt.a - ${CC} $(CFLAGS_FOR_TARGET) -L${srcdir} -L${objdir} \ - test.o -o $@ $(NEWLIB_LDFLAGS) -Wl,-Tidt.ld -idt-test.srec: idt-test.x - $(OBJCOPY) -O srec idt-test.x $@ -idt-test.dis: idt-test.x - @rm -fr idt-test.dis - $(OBJDUMP) -d idt-test.x > $@ -idt-test: idt-test.srec idt-test.dis - -doc: - -clean mostlyclean: - rm -f a.out core *.i *~ *.o *-test *.srec *.dis *.map *.x - -distclean maintainer-clean realclean: clean - rm -f Makefile config.status a.out - -.PHONY: install info install-info clean-info -install: - if test "x$(CRT0)" != x ; then \ - $(INSTALL_PROGRAM) $(CRT0) $(tooldir)/lib${MULTISUBDIR}/$(CRT0) ; \ - fi - if test "x$(PCRT0)" != x ; then \ - $(INSTALL_PROGRAM) $(PCRT0) $(tooldir)/lib${MULTISUBDIR}/$(PCRT0) ; \ - fi - @for bsp in ${BSP}; do\ - $(INSTALL_PROGRAM) $${bsp} $(tooldir)/lib${MULTISUBDIR}; \ - done - @for script in ${SCRIPTS}; do\ - $(INSTALL_DATA) ${srcdir}/$${script}.ld $(tooldir)/lib${MULTISUBDIR}/$${script}.ld; \ - done - -info: -install-info: -clean-info: - -test.o: ${srcdir}/test.c - -# these are for the BSPs -crt0.o: ${srcdir}/crt0.S -pcrt0.o: ${srcdir}/crt0.S - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) -DGCRT0 ${srcdir}/crt0.S -o ${PCRT0} -idtmon.o: ${srcdir}/idtmon.S -pmon.o: ${srcdir}/pmon.S - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) $(PART_SPECIFIC_DEFINES) ${srcdir}/pmon.S -o pmon.o -vr4300.o: ${srcdir}/vr4300.S - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) ${srcdir}/vr4300.S -vr5xxx.o: ${srcdir}/vr5xxx.S - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) ${srcdir}/vr5xxx.S -lsipmon.o: $(srcdir)/lsipmon.S $(srcdir)/pmon.S -jmr3904-io.o: ${srcdir}/jmr3904-io.c - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) -mips3 ${srcdir}/jmr3904-io.c -o $@ - -# cma101 can not be compiled mips16, if a mips16 version is needed then -# it will have to be built, then this rule can be scrapped, allowing -# the implicit rule to run. -cma101.o: ${srcdir}/cma101.c - $(CC) -c $(CFLAGS_FOR_TARGET) $(CFLAGS) -mno-mips16 ${srcdir}/cma101.c - - -syscalls.o: ${srcdir}/syscalls.c - -# target specific makefile fragment comes in here. -@target_makefile_frag@ - -Makefile: Makefile.in config.status @host_makefile_frag_path@ @target_makefile_frag_path@ - $(SHELL) config.status - -config.status: configure - $(SHELL) config.status --recheck diff --git a/libgloss/mips/array-io.c b/libgloss/mips/array-io.c deleted file mode 100644 index 5c1d96f..0000000 --- a/libgloss/mips/array-io.c +++ /dev/null @@ -1,68 +0,0 @@ -/* array-io.c -- I/O code for the Array Tech RAID disk controller. - * - * Copyright (c) 1995 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ -#include "mips.h" - -/* - * outbyte -- shove a byte out the serial port. We wait till the byte - */ -int -outbyte(byte) - unsigned char byte; -{ - return (PUTCHAR(byte)); -} - -/* - * inbyte -- get a byte from the serial port - */ -unsigned char -inbyte() -{ - return ((unsigned char)GETCHAR); -} - -/* - * led_putnum -- print a hex number on the LED. the value of num must be a byte. - - * The max number 15, since the front panel only has 4 LEDs. - */ -void -led_putnum ( num ) -char num; -{ - print ("Sorry, unimplemented, using putnum instead\r\n"); - putnum (num); -} - -/* - * zylons -- draw a rotating pattern. NOTE: this function never returns. - */ -void -zylons() -{ - print ("Sorry, unimplemented\r\n"); -} - -/* - * delay -- a really gross, ugly hack for simple time delays - */ -void -delay (x) - int x; -{ - int y = 17; - while (x-- !=0) - y = y^2; -} diff --git a/libgloss/mips/array.ld b/libgloss/mips/array.ld deleted file mode 100644 index 4675105..0000000 --- a/libgloss/mips/array.ld +++ /dev/null @@ -1,171 +0,0 @@ -/* - * memory map assumed by prom and standalone system - * - * physical kseg1 use - * - * 0x1fc20000 0xbfc20000 - * to prom text and read-only data - * 0x1fc00000 0xbfc00000 (in cpu board "prom space") - * - * (Top of RAM - 8K) downward sash and standalone program stack - * | ( - 8K to preserve kernel message bufs) - * V (standalone programs grow their stack - * immediately below sash's stack) - * - * ^ - * | - * 0x00100000 0xa0100000 upward sash program text, data, and bss - * - * ^ - * | - * 0x00020000 0xa0020000 upward standalone program text, data, and bss - * (kernel is loaded here, also) - * - * 0x0001ffff 0xa001ffff downward dbgmon stack - * | - * V - * - * ^ - * | - * 0x00010000 0xa0010000 upward dbgmon text, data, and bss - * - * 0x0000ffff 0xa000ffff downward prom monitor stack - * | - * V - * - * ^ - * | - * 0x00000500 0xa0000500 upward prom monitor bss - * - * 0x000004ff 0xa00004ff - * to restart block - * 0x00000400 0xa0000400 - * - * 0x000003ff 0xa00003ff - * to general exception code - * 0x00000080 0xa0000080 (note cpu addresses as 0x80000080!) - * - * 0x0000007f 0xa000007f - * to utlbmiss exception code - * 0x00000000 0xa0000000 (note cpu addresses as 0x80000000!) - */ - -/* Uncomment this if you want srecords. -OUTPUT_FORMAT(srec) - */ -ENTRY(start) -STARTUP(crt0.o) -INPUT(array.o) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - * -PROVIDE (__stack = 1M - 8); - */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0x80020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rdata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - _gp = ALIGN(16) + 0x8000; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - end = .; - _end = .; -} diff --git a/libgloss/mips/cma101.c b/libgloss/mips/cma101.c deleted file mode 100644 index 0a70440..0000000 --- a/libgloss/mips/cma101.c +++ /dev/null @@ -1,300 +0,0 @@ -/* - * cma101.c -- lo-level support for Cogent CMA101 development board. - * - * Copyright (c) 1996 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -#ifdef __mips16 -/* The assembler portions of this file need to be re-written to - support mips16, if and when that seems useful. -*/ -#error cma101.c can not be compiled -mips16 -#endif - - -#include <time.h> /* standard ANSI time routines */ - -/* Normally these would appear in a header file for external - use. However, we are only building a simple example world at the - moment: */ - -#include "regs.S" - -#if defined(MIPSEB) -#define BYTEREG(b,o) ((volatile unsigned char *)(PHYS_TO_K1((b) + (o) + 7))) -#endif /* MIPSEB */ -#if defined(MIPSEL) -#define BYTEREG(b,o) ((volatile unsigned char *)(PHYS_TO_K1((b) + (o)))) -#endif /* MIPSEL */ - -/* I/O addresses: */ -#define RTCLOCK_BASE (0x0E800000) /* Mk48T02 NVRAM/RTC */ -#define UART_BASE (0x0E900000) /* NS16C552 DUART */ -#define LCD_BASE (0x0EB00000) /* Alphanumeric display */ - -/* LCD panel manifests: */ -#define LCD_DATA BYTEREG(LCD_BASE,0) -#define LCD_CMD BYTEREG(LCD_BASE,8) - -#define LCD_STAT_BUSY (0x80) -#define LCD_SET_DDADDR (0x80) - -/* RTC manifests */ -/* The lo-offsets are the NVRAM locations (0x7F8 bytes) */ -#define RTC_CONTROL BYTEREG(RTCLOCK_BASE,0x3FC0) -#define RTC_SECS BYTEREG(RTCLOCK_BASE,0x3FC8) -#define RTC_MINS BYTEREG(RTCLOCK_BASE,0x3FD0) -#define RTC_HOURS BYTEREG(RTCLOCK_BASE,0x3FD8) -#define RTC_DAY BYTEREG(RTCLOCK_BASE,0x3FE0) -#define RTC_DATE BYTEREG(RTCLOCK_BASE,0x3FE8) -#define RTC_MONTH BYTEREG(RTCLOCK_BASE,0x3FF0) -#define RTC_YEAR BYTEREG(RTCLOCK_BASE,0x3FF8) - -#define RTC_CTL_LOCK_READ (0x40) /* lock RTC whilst reading */ -#define RTC_CTL_LOCK_WRITE (0x80) /* lock RTC whilst writing */ - -/* Macro to force out-standing memory transfers to complete before - next sequence. For the moment we assume that the processor in the - CMA101 board supports at least ISA II. */ -#define DOSYNC() asm(" .set mips2 ; sync ; .set mips0") - -/* We disable interrupts by writing zero to all of the masks, and the - global interrupt enable bit: */ -#define INTDISABLE(sr,tmp) asm("\ - .set mips2 ; \ - mfc0 %0,$12 ; \ - lui %1,0xffff ; \ - ori %1,%1,0xfffe ; \ - and %1, %0, %1 ; \ - mtc0 %1,$12 ; \ - .set mips0" : "=d" (sr), "=d" (tmp)) -#define INTRESTORE(sr) asm("\ - .set mips2 ; \ - mtc0 %0,$12 ; \ - .set mips0" : : "d" (sr)) - -/* TODO:FIXME: The CPU card support should be in separate source file - from the standard CMA101 support provided in this file. */ - -/* The CMA101 board being used contains a CMA257 Vr4300 CPU: - MasterClock is at 33MHz. PClock is derived from MasterClock by - multiplying by the ratio defined by the DivMode pins: - DivMode(1:0) MasterClock PClock Ratio - 00 100MHz 100MHz 1:1 - 01 100MHz 150MHz 1.5:1 - 10 100MHz 200MHz 2:1 - 11 100Mhz 300MHz 3:1 - - Are these pins reflected in the EC bits in the CONFIG register? or - is that talking about a different clock multiplier? - 110 = 1 - 111 = 1.5 - 000 = 2 - 001 = 3 - (all other values are undefined) -*/ - -#define MASTERCLOCK (33) /* ticks per uS */ -unsigned int pclock; /* number of PClock ticks per uS */ -void -set_pclock (void) -{ - unsigned int config; - asm volatile ("mfc0 %0,$16 ; nop ; nop" : "=r" (config)); /* nasty CP0 register constant */ - switch ((config >> 28) & 0x7) { - case 0x7 : /* 1.5:1 */ - pclock = (MASTERCLOCK + (MASTERCLOCK / 2)); - break; - - case 0x0 : /* 2:1 */ - pclock = (2 * MASTERCLOCK); - break; - - case 0x1 : /* 3:1 */ - pclock = (3 * MASTERCLOCK); - break; - - case 0x6 : /* 1:1 */ - default : /* invalid configuration, so assume the lowest */ - pclock = MASTERCLOCK; - break; - } - - return; -} - -#define PCLOCK_WAIT(x) __cpu_timer_poll((x) * pclock) - -/* NOTE: On the Cogent CMA101 board the LCD controller will sometimes - return not-busy, even though it is. The work-around is to perform a - ~50uS delay before checking the busy signal. */ - -static int -lcd_busy (void) -{ - PCLOCK_WAIT(50); /* 50uS delay */ - return(*LCD_CMD & LCD_STAT_BUSY); -} - -/* Note: This code *ASSUMES* that the LCD has already been initialised - by the monitor. It only provides code to write to the LCD, and is - not a complete device driver. */ - -void -lcd_display (int line, const char *msg) -{ - int n; - - if (lcd_busy ()) - return; - - *LCD_CMD = (LCD_SET_DDADDR | (line == 1 ? 0x40 : 0x00)); - - for (n = 0; n < 16; n++) { - if (lcd_busy ()) - return; - if (*msg) - *LCD_DATA = *msg++; - else - *LCD_DATA = ' '; - } - - return; -} - -#define SM_PATTERN (0x55AA55AA) -#define SM_INCR ((256 << 10) / sizeof(unsigned int)) /* 64K words */ - -extern unsigned int __buserr_count(void); -extern void __default_buserr_handler(void); -extern void __restore_buserr_handler(void); - -unsigned int -__sizemem () -{ - volatile unsigned int *base; - volatile unsigned int *probe; - unsigned int baseorig; - unsigned int sr; - extern void *end; - int extra; - - INTDISABLE(sr,baseorig); /* disable all interrupt masks */ - - __default_buserr_handler(); - __cpu_flush(); - - DOSYNC(); - - /* _end is the end of the user program. _end may not be properly aligned - for an int pointer, so we adjust the address to make sure it is safe. - We use void * arithmetic to avoid accidentally truncating the pointer. */ - - extra = ((int) &end & (sizeof (int) - 1)); - base = ((void *) &end + sizeof (int) - extra); - baseorig = *base; - - *base = SM_PATTERN; - /* This assumes that the instructions fetched between the store, and - the following read will have changed the data bus contents: */ - if (*base == SM_PATTERN) { - probe = base; - for (;;) { - unsigned int probeorig; - probe += SM_INCR; - probeorig = *probe; - /* Check if a bus error occurred: */ - if (!__buserr_count()) { - *probe = SM_PATTERN; - DOSYNC(); - if (*probe == SM_PATTERN) { - *probe = ~SM_PATTERN; - DOSYNC(); - if (*probe == ~SM_PATTERN) { - if (*base == SM_PATTERN) { - *probe = probeorig; - continue; - } - } - } - *probe = probeorig; - } - break; - } - } - - *base = baseorig; - __restore_buserr_handler(); - __cpu_flush(); - - DOSYNC(); - - INTRESTORE(sr); /* restore interrupt mask to entry state */ - - return((probe - base) * sizeof(unsigned int)); -} - -/* Provided as a function, so as to avoid reading the I/O location - multiple times: */ -static int -convertbcd(byte) - unsigned char byte; -{ - return ((((byte >> 4) & 0xF) * 10) + (byte & 0xF)); -} - -time_t -time (_timer) - time_t *_timer; -{ - time_t result = 0; - struct tm tm; - *RTC_CONTROL |= RTC_CTL_LOCK_READ; - DOSYNC(); - - tm.tm_sec = convertbcd(*RTC_SECS); - tm.tm_min = convertbcd(*RTC_MINS); - tm.tm_hour = convertbcd(*RTC_HOURS); - tm.tm_mday = convertbcd(*RTC_DATE); - tm.tm_mon = convertbcd(*RTC_MONTH); - tm.tm_year = convertbcd(*RTC_YEAR); - - DOSYNC(); - *RTC_CONTROL &= ~(RTC_CTL_LOCK_READ | RTC_CTL_LOCK_WRITE); - - tm.tm_isdst = 0; - - /* Check for invalid time information */ - if ((tm.tm_sec < 60) && (tm.tm_min < 60) && (tm.tm_hour < 24) - && (tm.tm_mday < 32) && (tm.tm_mon < 13)) { - - /* Get the correct year number, but keep it in YEAR-1900 form: */ - if (tm.tm_year < 70) - tm.tm_year += 100; - -#if 0 /* NOTE: mon_printf() can only accept 4 arguments (format string + 3 fields) */ - mon_printf("[DBG: s=%d m=%d h=%d]", tm.tm_sec, tm.tm_min, tm.tm_hour); - mon_printf("[DBG: d=%d m=%d y=%d]", tm.tm_mday, tm.tm_mon, tm.tm_year); -#endif - - /* Convert the time-structure into a second count */ - result = mktime (&tm); - } - - if (_timer != NULL) - *_timer = result; - - return (result); -} - -/*> EOF cma101.c <*/ diff --git a/libgloss/mips/configure b/libgloss/mips/configure deleted file mode 100755 index 3ac1daa..0000000 --- a/libgloss/mips/configure +++ /dev/null @@ -1,1254 +0,0 @@ -#! /bin/sh - -# Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.13 -# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. - -# Defaults: -ac_help= -ac_default_prefix=/usr/local -# Any additions from configure.in: - -# Initialize some variables set by options. -# The variables have the same names as the options, with -# dashes changed to underlines. -build=NONE -cache_file=./config.cache -exec_prefix=NONE -host=NONE -no_create= -nonopt=NONE -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -target=NONE -verbose= -x_includes=NONE -x_libraries=NONE -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -# Initialize some other variables. -subdirs= -MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} -# Maximum number of lines to put in a shell here document. -ac_max_here_lines=12 - -ac_prev= -for ac_option -do - - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - case "$ac_option" in - -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) ac_optarg= ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case "$ac_option" in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir="$ac_optarg" ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build="$ac_optarg" ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file="$ac_optarg" ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir="$ac_optarg" ;; - - -disable-* | --disable-*) - ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - eval "enable_${ac_feature}=no" ;; - - -enable-* | --enable-*) - ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "enable_${ac_feature}='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix="$ac_optarg" ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he) - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat << EOF -Usage: configure [options] [host] -Options: [defaults in brackets after descriptions] -Configuration: - --cache-file=FILE cache test results in FILE - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages - --version print the version of autoconf that created configure -Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [same as prefix] - --bindir=DIR user executables in DIR [EPREFIX/bin] - --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] - --libexecdir=DIR program executables in DIR [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data in DIR - [PREFIX/share] - --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data in DIR - [PREFIX/com] - --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] - --libdir=DIR object code libraries in DIR [EPREFIX/lib] - --includedir=DIR C header files in DIR [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] - --infodir=DIR info documentation in DIR [PREFIX/info] - --mandir=DIR man documentation in DIR [PREFIX/man] - --srcdir=DIR find the sources in DIR [configure dir or ..] - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM - run sed PROGRAM on installed program names -EOF - cat << EOF -Host type: - --build=BUILD configure for building on BUILD [BUILD=HOST] - --host=HOST configure for HOST [guessed] - --target=TARGET configure for TARGET [TARGET=HOST] -Features and packages: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR -EOF - if test -n "$ac_help"; then - echo "--enable and --with options recognized:$ac_help" - fi - exit 0 ;; - - -host | --host | --hos | --ho) - ac_prev=host ;; - -host=* | --host=* | --hos=* | --ho=*) - host="$ac_optarg" ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir="$ac_optarg" ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir="$ac_optarg" ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir="$ac_optarg" ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir="$ac_optarg" ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir="$ac_optarg" ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir="$ac_optarg" ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir="$ac_optarg" ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix="$ac_optarg" ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix="$ac_optarg" ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix="$ac_optarg" ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name="$ac_optarg" ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir="$ac_optarg" ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir="$ac_optarg" ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir="$ac_optarg" ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir="$ac_optarg" ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target="$ac_optarg" ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.13" - exit 0 ;; - - -with-* | --with-*) - ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "with_${ac_package}='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`echo $ac_option|sed -e 's/-*without-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - eval "with_${ac_package}=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes="$ac_optarg" ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries="$ac_optarg" ;; - - -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } - ;; - - *) - if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 - fi - if test "x$nonopt" != xNONE; then - { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } - fi - nonopt="$ac_option" - ;; - - esac -done - -if test -n "$ac_prev"; then - { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } -fi - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 6 checking for... messages and results -# 5 compiler messages saved in config.log -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>./config.log - -echo "\ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -" 1>&5 - -# Strip out --no-create and --no-recursion so they do not pile up. -# Also quote any args containing shell metacharacters. -ac_configure_args= -for ac_arg -do - case "$ac_arg" in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ac_configure_args="$ac_configure_args '$ac_arg'" ;; - *) ac_configure_args="$ac_configure_args $ac_arg" ;; - esac -done - -# NLS nuisances. -# Only set these to C if already set. These must not be set unconditionally -# because not all systems understand e.g. LANG=C (notably SCO). -# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! -# Non-C LC_CTYPE values break the ctype check. -if test "${LANG+set}" = set; then LANG=C; export LANG; fi -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi -if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h - -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=crt0.S - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } - else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } - fi -fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file -else - echo "creating cache $cache_file" - > $cache_file -fi - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -ac_exeext= -ac_objext=o -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi - - - -if test "${enable_shared}" = "yes" ; then - echo "Shared libraries not supported for cross compiling, ignored" -fi - -if test "$srcdir" = "." ; then - if test "${with_target_subdir}" != "." ; then - libgloss_topdir="${srcdir}/${with_multisrctop}../../.." - else - libgloss_topdir="${srcdir}/${with_multisrctop}../.." - fi -else - libgloss_topdir="${srcdir}/../.." -fi -ac_aux_dir= -for ac_dir in $libgloss_topdir $srcdir/$libgloss_topdir; do - if test -f $ac_dir/install-sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f $ac_dir/install.sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { echo "configure: error: can not find install-sh or install.sh in $libgloss_topdir $srcdir/$libgloss_topdir" 1>&2; exit 1; } -fi -ac_config_guess=$ac_aux_dir/config.guess -ac_config_sub=$ac_aux_dir/config.sub -ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - - - -# Do some error checking and defaulting for the host and target type. -# The inputs are: -# configure --host=HOST --target=TARGET --build=BUILD NONOPT -# -# The rules are: -# 1. You are not allowed to specify --host, --target, and nonopt at the -# same time. -# 2. Host defaults to nonopt. -# 3. If nonopt is not specified, then host defaults to the current host, -# as determined by config.guess. -# 4. Target and build default to nonopt. -# 5. If nonopt is not specified, then target and build default to host. - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -case $host---$target---$nonopt in -NONE---*---* | *---NONE---* | *---*---NONE) ;; -*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; -esac - - -# Make sure we can run config.sub. -if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : -else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } -fi - -echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:587: checking host system type" >&5 - -host_alias=$host -case "$host_alias" in -NONE) - case $nonopt in - NONE) - if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : - else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } - fi ;; - *) host_alias=$nonopt ;; - esac ;; -esac - -host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$host" 1>&6 - -echo $ac_n "checking target system type""... $ac_c" 1>&6 -echo "configure:608: checking target system type" >&5 - -target_alias=$target -case "$target_alias" in -NONE) - case $nonopt in - NONE) target_alias=$host_alias ;; - *) target_alias=$nonopt ;; - esac ;; -esac - -target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` -target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$target" 1>&6 - -echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:626: checking build system type" >&5 - -build_alias=$build -case "$build_alias" in -NONE) - case $nonopt in - NONE) build_alias=$host_alias ;; - *) build_alias=$nonopt ;; - esac ;; -esac - -build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` -build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$build" 1>&6 - -test "$host_alias" != "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- - -if test "$program_transform_name" = s,x,x,; then - program_transform_name= -else - # Double any \ or $. echo might interpret backslashes. - cat <<\EOF_SED > conftestsed -s,\\,\\\\,g; s,\$,$$,g -EOF_SED - program_transform_name="`echo $program_transform_name|sed -f conftestsed`" - rm -f conftestsed -fi -test "$program_prefix" != NONE && - program_transform_name="s,^,${program_prefix},; $program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" - -# sed with no file args requires a program. -test "$program_transform_name" = "" && program_transform_name="s,x,x," - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:680: checking for a BSD compatible install" >&5 -if test -z "$INSTALL"; then -if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - ac_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_IFS" - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL="$ac_cv_path_install" - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL="$ac_install_sh" - fi -fi -echo "$ac_t""$INSTALL" 1>&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - -# FIXME: We temporarily define our own version of AC_PROG_CC. This is -# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We -# are building a library that must be included in all links, so we -# can't link an executable until this lib is built. -# autoconf should provide a way to do this. - - - -# Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:744: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_CC="gcc" - break - fi - done - IFS="$ac_save_ifs" -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:774: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_prog_rejected=no - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - break - fi - done - IFS="$ac_save_ifs" -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# -gt 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - set dummy "$ac_dir/$ac_word" "$@" - shift - ac_cv_prog_CC="$@" - fi -fi -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } -fi - -echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:823: checking whether we are using GNU C" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.c <<EOF -#ifdef __GNUC__ - yes; -#endif -EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:832: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi -fi - -echo "$ac_t""$ac_cv_prog_gcc" 1>&6 - -if test $ac_cv_prog_gcc = yes; then - GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:847: checking whether ${CC-cc} accepts -g" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - echo 'void f(){}' > conftest.c -if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then - ac_cv_prog_cc_g=yes -else - ac_cv_prog_cc_g=no -fi -rm -f conftest* - -fi - -echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" -fi - -AS=${AS-as} - -AR=${AR-ar} - -LD=${LD-ld} - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:883: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_RANLIB="ranlib" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" -fi -fi -RANLIB="$ac_cv_prog_RANLIB" -if test -n "$RANLIB"; then - echo "$ac_t""$RANLIB" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - -crt0=crt0.o -pcrt0=pcrt0.o - -case "${target}" in - mips*-tx39*-*|mipstx39*-*-*) - part_specific_obj= - part_specific_defines= - script_list="dve idt jmr3904app jmr3904dram jmr3904dram-java jmr3904app-java" - bsp_list="libdve.a libidt.a libjmr3904.a" - ;; - mips*-lsi*-*) - part_specific_obj=entry.o - part_specific_defines= - script_list="lsi" - bsp_list=liblsi.a - ;; - mips64vr5*-*-*) - part_specific_obj="vr5xxx.o cma101.o" - part_specific_defines=-DR5000 - script_list="idt pmon ddb lsi idtecoff nullmon" - bsp_list="libidt.a libpmon.a liblsi.a libnullmon.a" - ;; - *) - part_specific_obj="vr4300.o cma101.o" - part_specific_defines= - script_list="idt pmon ddb lsi idtecoff nullmon" - bsp_list="libidt.a libpmon.a liblsi.a libnullmon.a" - ;; -esac - -host_makefile_frag=${srcdir}/../config/default.mh -target_makefile_frag=${srcdir}/../config/mips.mt - -host_makefile_frag_path=$host_makefile_frag - - -target_makefile_frag_path=$target_makefile_frag - - - - - - - - - -trap '' 1 2 15 -cat > confcache <<\EOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -EOF -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -(set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote substitution - # turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - -e "s/'/'\\\\''/g" \ - -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; - esac >> confcache -if cmp -s $cache_file confcache; then - : -else - if test -w $cache_file; then - echo "updating cache $cache_file" - cat confcache > $cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Any assignment to VPATH causes Sun make to only execute -# the first set of double-colon rules, so remove it if not needed. -# If there is a colon in the path, we need to keep it. -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' -fi - -trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -cat > conftest.defs <<\EOF -s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g -s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g -s%\[%\\&%g -s%\]%\\&%g -s%\$%$$%g -EOF -DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` -rm -f conftest.defs - - -# Without the "./", some shells look in PATH for config.status. -: ${CONFIG_STATUS=./config.status} - -echo creating $CONFIG_STATUS -rm -f $CONFIG_STATUS -cat > $CONFIG_STATUS <<EOF -#! /bin/sh -# Generated automatically by configure. -# Run this file to recreate the current configuration. -# This directory was configured as follows, -# on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# -# $0 $ac_configure_args -# -# Compiler output produced by configure, useful for debugging -# configure, is in ./config.log if it exists. - -ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" -for ac_option -do - case "\$ac_option" in - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" - exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; - -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.13" - exit 0 ;; - -help | --help | --hel | --he | --h) - echo "\$ac_cs_usage"; exit 0 ;; - *) echo "\$ac_cs_usage"; exit 1 ;; - esac -done - -ac_given_srcdir=$srcdir -ac_given_INSTALL="$INSTALL" - -trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 -EOF -cat >> $CONFIG_STATUS <<EOF - -# Protect against being on the right side of a sed subst in config.status. -sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; - s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF -$ac_vpsub -$extrasub -s%@SHELL@%$SHELL%g -s%@CFLAGS@%$CFLAGS%g -s%@CPPFLAGS@%$CPPFLAGS%g -s%@CXXFLAGS@%$CXXFLAGS%g -s%@FFLAGS@%$FFLAGS%g -s%@DEFS@%$DEFS%g -s%@LDFLAGS@%$LDFLAGS%g -s%@LIBS@%$LIBS%g -s%@exec_prefix@%$exec_prefix%g -s%@prefix@%$prefix%g -s%@program_transform_name@%$program_transform_name%g -s%@bindir@%$bindir%g -s%@sbindir@%$sbindir%g -s%@libexecdir@%$libexecdir%g -s%@datadir@%$datadir%g -s%@sysconfdir@%$sysconfdir%g -s%@sharedstatedir@%$sharedstatedir%g -s%@localstatedir@%$localstatedir%g -s%@libdir@%$libdir%g -s%@includedir@%$includedir%g -s%@oldincludedir@%$oldincludedir%g -s%@infodir@%$infodir%g -s%@mandir@%$mandir%g -s%@host@%$host%g -s%@host_alias@%$host_alias%g -s%@host_cpu@%$host_cpu%g -s%@host_vendor@%$host_vendor%g -s%@host_os@%$host_os%g -s%@target@%$target%g -s%@target_alias@%$target_alias%g -s%@target_cpu@%$target_cpu%g -s%@target_vendor@%$target_vendor%g -s%@target_os@%$target_os%g -s%@build@%$build%g -s%@build_alias@%$build_alias%g -s%@build_cpu@%$build_cpu%g -s%@build_vendor@%$build_vendor%g -s%@build_os@%$build_os%g -s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g -s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g -s%@INSTALL_DATA@%$INSTALL_DATA%g -s%@CC@%$CC%g -s%@AS@%$AS%g -s%@AR@%$AR%g -s%@LD@%$LD%g -s%@RANLIB@%$RANLIB%g -s%@host_makefile_frag_path@%$host_makefile_frag_path%g -/@host_makefile_frag@/r $host_makefile_frag -s%@host_makefile_frag@%%g -s%@target_makefile_frag_path@%$target_makefile_frag_path%g -/@target_makefile_frag@/r $target_makefile_frag -s%@target_makefile_frag@%%g -s%@part_specific_obj@%$part_specific_obj%g -s%@part_specific_defines@%$part_specific_defines%g -s%@script_list@%$script_list%g -s%@bsp_list@%$bsp_list%g -s%@crt0@%$crt0%g -s%@pcrt0@%$pcrt0%g - -CEOF -EOF - -cat >> $CONFIG_STATUS <<\EOF - -# Split the substitutions into bite-sized pieces for seds with -# small command number limits, like on Digital OSF/1 and HP-UX. -ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. -ac_file=1 # Number of current file. -ac_beg=1 # First line for current file. -ac_end=$ac_max_sed_cmds # Line after last line for current file. -ac_more_lines=: -ac_sed_cmds="" -while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file - else - sed "${ac_end}q" conftest.subs > conftest.s$ac_file - fi - if test ! -s conftest.s$ac_file; then - ac_more_lines=false - rm -f conftest.s$ac_file - else - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f conftest.s$ac_file" - else - ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" - fi - ac_file=`expr $ac_file + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_cmds` - fi -done -if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat -fi -EOF - -cat >> $CONFIG_STATUS <<EOF - -CONFIG_FILES=\${CONFIG_FILES-"Makefile"} -EOF -cat >> $CONFIG_STATUS <<\EOF -for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` - else - ac_dir_suffix= ac_dots= - fi - - case "$ac_given_srcdir" in - .) srcdir=. - if test -z "$ac_dots"; then top_srcdir=. - else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; - *) # Relative path. - srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" - top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - case "$ac_given_INSTALL" in - [/$]*) INSTALL="$ac_given_INSTALL" ;; - *) INSTALL="$ac_dots$ac_given_INSTALL" ;; - esac - - echo creating "$ac_file" - rm -f "$ac_file" - configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." - case "$ac_file" in - *Makefile*) ac_comsub="1i\\ -# $configure_input" ;; - *) ac_comsub= ;; - esac - - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - sed -e "$ac_comsub -s%@configure_input@%$configure_input%g -s%@srcdir@%$srcdir%g -s%@top_srcdir@%$top_srcdir%g -s%@INSTALL@%$INSTALL%g -" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file -fi; done -rm -f conftest.s* - -EOF -cat >> $CONFIG_STATUS <<EOF -srcdir=${srcdir} -target=${target} -ac_configure_args="${ac_configure_args} --enable-multilib" -CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -libgloss_topdir=${libgloss_topdir} - -EOF -cat >> $CONFIG_STATUS <<\EOF -. ${libgloss_topdir}/config-ml.in -exit 0 -EOF -chmod +x $CONFIG_STATUS -rm -fr confdefs* $ac_clean_files -test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - - - diff --git a/libgloss/mips/configure.in b/libgloss/mips/configure.in deleted file mode 100644 index 8191529..0000000 --- a/libgloss/mips/configure.in +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright (c) 1995, 1996, 1997, 1998, 1999 Cygnus Support -# -# The authors hereby grant permission to use, copy, modify, distribute, -# and license this software and its documentation for any purpose, provided -# that existing copyright notices are retained in all copies and that this -# notice is included verbatim in any distributions. No written agreement, -# license, or royalty fee is required for any of the authorized uses. -# Modifications to this software may be copyrighted by their authors -# and need not follow the licensing terms described here, provided that -# the new terms are clearly indicated on the first page of each file where -# they apply. -# -# Process this file with autoconf to produce a configure script. -# -AC_PREREQ(2.5)dnl -AC_INIT(crt0.S) - -if test "${enable_shared}" = "yes" ; then - echo "Shared libraries not supported for cross compiling, ignored" -fi - -if test "$srcdir" = "." ; then - if test "${with_target_subdir}" != "." ; then - libgloss_topdir="${srcdir}/${with_multisrctop}../../.." - else - libgloss_topdir="${srcdir}/${with_multisrctop}../.." - fi -else - libgloss_topdir="${srcdir}/../.." -fi -AC_CONFIG_AUX_DIR($libgloss_topdir) - -AC_CANONICAL_SYSTEM -AC_ARG_PROGRAM - -AC_PROG_INSTALL - -# FIXME: We temporarily define our own version of AC_PROG_CC. This is -# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We -# are building a library that must be included in all links, so we -# can't link an executable until this lib is built. -# autoconf should provide a way to do this. - -AC_DEFUN(LIB_AC_PROG_CC, -[AC_BEFORE([$0], [AC_PROG_CPP])dnl -AC_CHECK_PROG(CC, gcc, gcc) -if test -z "$CC"; then - AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc) - test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH]) -fi - -AC_PROG_CC_GNU - -if test $ac_cv_prog_gcc = yes; then - GCC=yes -dnl Check whether -g works, even if CFLAGS is set, in case the package -dnl plays around with CFLAGS (such as to build both debugging and -dnl normal versions of a library), tasteless as that idea is. - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - AC_PROG_CC_G - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" -fi -]) - -LIB_AC_PROG_CC -AS=${AS-as} -AC_SUBST(AS) -AR=${AR-ar} -AC_SUBST(AR) -LD=${LD-ld} -AC_SUBST(LD) -AC_PROG_RANLIB - -crt0=crt0.o -pcrt0=pcrt0.o - -case "${target}" in - mips*-tx39*-*|mipstx39*-*-*) - part_specific_obj= - part_specific_defines= - script_list="dve idt jmr3904app jmr3904dram jmr3904dram-java jmr3904app-java" - bsp_list="libdve.a libidt.a libjmr3904.a" - ;; - mips*-lsi*-*) - part_specific_obj=entry.o - part_specific_defines= - script_list="lsi" - bsp_list=liblsi.a - ;; - mips64vr5*-*-*) - part_specific_obj="vr5xxx.o cma101.o" - part_specific_defines=-DR5000 - script_list="idt pmon ddb lsi idtecoff nullmon" - bsp_list="libidt.a libpmon.a liblsi.a libnullmon.a" - ;; - *) - part_specific_obj="vr4300.o cma101.o" - part_specific_defines= - script_list="idt pmon ddb lsi idtecoff nullmon" - bsp_list="libidt.a libpmon.a liblsi.a libnullmon.a" - ;; -esac - -host_makefile_frag=${srcdir}/../config/default.mh -target_makefile_frag=${srcdir}/../config/mips.mt - -dnl We have to assign the same value to other variables because autoconf -dnl doesn't provide a mechanism to substitute a replacement keyword with -dnl arbitrary data or pathnames. -dnl -host_makefile_frag_path=$host_makefile_frag -AC_SUBST(host_makefile_frag_path) -AC_SUBST_FILE(host_makefile_frag) -target_makefile_frag_path=$target_makefile_frag -AC_SUBST(target_makefile_frag_path) -AC_SUBST_FILE(target_makefile_frag) -AC_SUBST(part_specific_obj) -AC_SUBST(part_specific_defines) -AC_SUBST(script_list) -AC_SUBST(bsp_list) -AC_SUBST(crt0) -AC_SUBST(pcrt0) - -AC_OUTPUT(Makefile, -. ${libgloss_topdir}/config-ml.in, -srcdir=${srcdir} -target=${target} -ac_configure_args="${ac_configure_args} --enable-multilib" -CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -libgloss_topdir=${libgloss_topdir} -) - - diff --git a/libgloss/mips/crt0.S b/libgloss/mips/crt0.S deleted file mode 100644 index dbecc5e..0000000 --- a/libgloss/mips/crt0.S +++ /dev/null @@ -1,230 +0,0 @@ -/* - * crt0.S -- startup file for MIPS. - * - * Copyright (c) 1995, 1996, 1997 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#include "regs.S" - -/* - * Set up some room for a stack. We just grab a chunk of memory. - */ -#define STACK_SIZE 0x4000 -#define GLOBAL_SIZE 0x2000 - -#define STARTUP_STACK_SIZE 0x0100 - -/* This is for referencing addresses that are not in the .sdata or - .sbss section under embedded-pic, or before we've set up gp. */ -#ifdef __mips_embedded_pic -# ifdef __mips64 -# define LA(t,x) la t,x-PICBASE ; daddu t,s0,t -# else -# define LA(t,x) la t,x-PICBASE ; addu t,s0,t -# endif -#else /* __mips_embedded_pic */ -# define LA(t,x) la t,x -#endif /* __mips_embedded_pic */ - - .comm __memsize, 12 - .comm __lstack, STARTUP_STACK_SIZE - .comm __stackbase,4 - - .text - .align 2 - -/* Without the following nop, GDB thinks _start is a data variable. - * This is probably a bug in GDB in handling a symbol that is at the - * start of the .text section. - */ - nop - - .globl _start - .ent _start -_start: - .set noreorder -#ifdef __mips_embedded_pic - PICBASE = .+8 - bal PICBASE - nop - move s0,$31 -#endif -#if __mips < 3 -#define STATUS_MASK (SR_CU1|SR_PE) -#else -# For mips3 or mips4, turn on 64-bit addressing and additional float regs -#define STATUS_MASK (SR_CU1|SR_PE|SR_FR|SR_KX|SR_SX|SR_UX) -#endif - li v0, STATUS_MASK - mtc0 v0, C0_SR - mtc0 zero, C0_CAUSE - nop - -/* Check for FPU presence. Don't check if we know that soft_float is - being used. (This also avoids illegal instruction exceptions.) */ - -#ifndef __mips_soft_float - li t2,0xAAAA5555 - mtc1 t2,fp0 /* write to FPR 0 */ - mtc1 zero,fp1 /* write to FPR 1 */ - mfc1 t0,fp0 - mfc1 t1,fp1 - nop - bne t0,t2,1f /* check for match */ - nop - bne t1,zero,1f /* double check */ - nop - j 2f /* FPU is present. */ - nop -#endif -1: - /* FPU is not present. Set status register to say that. */ - li v0, (STATUS_MASK-(STATUS_MASK & SR_CU1)) - mtc0 v0, C0_SR - nop -2: - - -/* Fix high bits, if any, of the PC so that exception handling - doesn't get confused. */ - LA (v0, 3f) - jr v0 - nop -3: - LA (gp, _gp) # set the global data pointer - .end _start - -/* - * zero out the bss section. - */ - .globl __memsize - .globl get_mem_info .text - .globl __stack - .globl __global - .globl zerobss - .ent zerobss -zerobss: - LA (v0, _fbss) - LA (v1, _end) -3: - sw zero,0(v0) - bltu v0,v1,3b - addiu v0,v0,4 # executed in delay slot - - la t0, __lstack # make a small stack so we - addiu sp, t0, STARTUP_STACK_SIZE # can run some C code - la a0, __memsize # get the usable memory size - jal get_mem_info - nop - - /* setup the stack pointer */ - LA (t0, __stack) # is __stack set ? - bne t0,zero,4f - nop - - /* NOTE: a0[0] contains the amount of memory available, and - not the last memory address. */ - lw t0,0(a0) # last address of memory available - la t1,K0BASE # cached kernel memory - addu t0,t0,t1 # get the end of memory address - /* We must subtract 24 bytes for the 3 8 byte arguments to main, in - case main wants to write them back to the stack. The caller is - supposed to allocate stack space for parameters in registers in - the old MIPS ABIs. We must do this even though we aren't passing - arguments, because main might be declared to have them. - - Some ports need a larger alignment for the stack, so we subtract - 32, which satisifes the stack for the arguments and keeps the - stack pointer better aligned. */ - subu t0,t0,32 # and generate a starting stack-pointer -4: - move sp,t0 # set stack pointer - sw sp,__stackbase # keep this for future ref - .end zerobss - -/* - * initialize target specific stuff. Only execute these - * functions it they exist. - */ - .globl hardware_init_hook .text - .globl software_init_hook .text - .globl __do_global_dtors .text - .globl atexit .text - .globl exit .text - .globl init - .ent init -init: - LA (t9, hardware_init_hook) # init the hardware if needed - beq t9,zero,6f - nop - jal t9 - nop -6: - LA (t9, software_init_hook) # init the hardware if needed - beq t9,zero,7f - nop - jal t9 - nop -7: - LA (a0, __do_global_dtors) - jal atexit - nop - -#ifdef GCRT0 - .globl _ftext - .globl _extext - LA (a0, _ftext) - LA (a1, _etext) - jal monstartup - nop -#endif - - move a0,zero # set argc to 0 - jal main # call the program start function - nop - - # fall through to the "exit" routine - jal exit # call libc exit to run the G++ - # destructors - move a0,v0 # pass through the exit code - .end init - -/* - * _exit -- Exit from the application. Normally we cause a user trap - * to return to the ROM monitor for another run. NOTE: This is - * the only other routine we provide in the crt0.o object, since - * it may be tied to the "_start" routine. It also allows - * executables that contain a complete world to be linked with - * just the crt0.o object. - */ - .globl _exit - .ent _exit -_exit: -7: -#ifdef GCRT0 - jal _mcleanup - nop -#endif - # break instruction can cope with 0xfffff, but GAS limits the range: - break 1023 - nop - b 7b # but loop back just in-case - nop - .end _exit - -/* EOF crt0.S */ diff --git a/libgloss/mips/ddb.ld b/libgloss/mips/ddb.ld deleted file mode 100644 index 73dbad9..0000000 --- a/libgloss/mips/ddb.ld +++ /dev/null @@ -1,154 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. */ - -ENTRY(_start) -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -lpmon -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0100000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rdata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/dtor.C b/libgloss/mips/dtor.C deleted file mode 100644 index 2cfcb46..0000000 --- a/libgloss/mips/dtor.C +++ /dev/null @@ -1,25 +0,0 @@ -#include <stdio.h> - -extern "C" void print (char *, ...); - -class foo -{ -public: - foo () { print ("ctor\n"); } - ~foo () { print ("dtor\n"); } -}; - -foo x; - -main () -{ - outbyte ('&'); - outbyte ('@'); - outbyte ('$'); - outbyte ('%'); - print ("FooBar\r\n"); - - /* whew, we made it */ - print ("\r\nDone...\r\n"); - fflush(stdout); -} diff --git a/libgloss/mips/dve.ld b/libgloss/mips/dve.ld deleted file mode 100644 index a09eeee..0000000 --- a/libgloss/mips/dve.ld +++ /dev/null @@ -1,155 +0,0 @@ -/* Linker script for Densan DVE-R3900/20A board */ - -ENTRY(_start) -OUTPUT_ARCH("mips:3000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -ldve -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0040000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/dvemon.c b/libgloss/mips/dvemon.c deleted file mode 100644 index 16b49da..0000000 --- a/libgloss/mips/dvemon.c +++ /dev/null @@ -1,83 +0,0 @@ -/* dve.c -- I/O code for the Densan DVE-R3900 board. - * - * Copyright (c) 1998, 1999 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -/* Flag indicating that we are being debugged by GDB. If set, - preceded each character output to the console with a ^O, - so that GDB will print it instead of discarding it. */ - -int output_debug = 1; - -/* Monitor "ci" function (console input) */ - -typedef int (*cifunc)(int waitflag); -#ifdef __mips64 -static cifunc ci = (cifunc) 0xffffffffbfc00010L; -#else -static cifunc ci = (cifunc) 0xbfc00010; -#endif - -#define WAIT 1 -#define NOWAIT 0 -#define NOCHAR (-1) - -/* Monitor "co" function (console output) */ - -typedef void (*cofunc)(int c); -#ifdef __mips64 -static cofunc co = (cofunc) 0xffffffffbfc00018L; -#else -static cofunc co = (cofunc) 0xbfc00018; -#endif - -/* outbyte -- shove a byte out the serial port; used by write.c. */ - -int -outbyte(byte) - unsigned char byte; -{ - /* Output a ^O prefix so that GDB won't discard the output. */ - if (output_debug) - co (0x0f); - - co (byte); - return byte; -} - -/* inbyte -- get a byte from the serial port; used by read.c. */ - -unsigned char -inbyte() -{ - return (unsigned char) ci (WAIT); -} - - -/* Structure filled in by get_mem_info. Only the size field is - actually used (by sbrk), so the others aren't even filled in. */ - -struct s_mem -{ - unsigned int size; - unsigned int icsize; - unsigned int dcsize; -}; - - -void -get_mem_info (mem) - struct s_mem *mem; -{ - mem->size = 0x1000000; /* DVE-R3900 board has 16 MB of RAM */ -} diff --git a/libgloss/mips/entry.S b/libgloss/mips/entry.S deleted file mode 100644 index 3630c55..0000000 --- a/libgloss/mips/entry.S +++ /dev/null @@ -1,281 +0,0 @@ -/* entry.S - exception handler for emulating MIPS16 'entry' and 'exit' - pseudo-instructions. These instructions are generated by the compiler - when the -mentry switch is used. The instructions are not implemented - in the MIPS16 CPU; hence the exception handler that emulates them. - - This module contains the following public functions: - - * void __install_entry_handler(void); - - This function installs the entry/exit exception handler. It should - be called before executing any MIPS16 functions that were compiled with - -mentry, typically before main() is called. - - * void __remove_entry_handler(void); - - This function removes the entry/exit exception handler. It should - be called when the program is exiting, or when it is known that no - more MIPS16 functions compiled with -mentry will be called. -*/ - -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#include "regs.S" - -#define CAUSE_EXCMASK 0x3c /* mask for ExcCode in Cause Register */ -#define EXC_RI 0x28 /* 101000 == 10 << 2 */ - -/* Set DEBUG to 1 to enable recording of the last 16 interrupt causes. */ - -#define DEBUG 0 - -#if DEBUG - - .sdata -int_count: - .space 4 /* interrupt count modulo 16 */ -int_cause: - .space 4*16 /* last 16 interrupt causes */ -#endif - - .text - - .set noreorder /* Do NOT reorder instructions */ - - -/* __entry_exit_handler - the reserved instruction exception handler - that emulates the entry and exit instruction. */ - -__entry_exit_handler: - .set noat /* Do NOT use at register */ -#if DEBUG -/* Must avoid using 'la' pseudo-op because it uses gp register, which - may not have a good value in an exception handler. */ - -# la k0, int_count /* intcount = (intcount + 1) & 0xf */ - lui k0 ,%hi(int_count) - addiu k0, k0 ,%lo(int_count) - lw k1, (k0) - addiu k1, k1, 1 - andi k1, k1, 0x0f - sw k1, (k0) -# la k0, int_cause /* k1 = &int_cause[intcount] */ - lui k0, %hi(int_cause) - addiu k0, k0, %lo(int_cause) - sll k1, k1, 2 - add k1, k1, k0 -#endif - mfc0 k0, C0_CAUSE /* Fetch cause */ -#if DEBUG - sw k0, -4(k1) /* Save exception cause in buffer */ -#endif - mfc0 k1, C0_EPC /* Check for Reserved Inst. without */ - and k0, CAUSE_EXCMASK /* destroying any register */ - subu k0, EXC_RI - bne k0, zero, check_others /* Sorry, go do something else */ - - and k0, k1, 1 /* Check for TR mode (pc.0 = 1) */ - beq k0, zero, ri_in_32 /* Sorry, RI in 32-bit mode */ - xor k1, 1 - -/* Since we now are going to emulate or die, we can use all the T-registers */ -/* that MIPS16 does not use (at, t0-t8), and we don't have to save them. */ - - .set at /* Now it's ok to use at again */ - -#if 0 - j leave - rfe -#endif - - lhu t0, 0(k1) /* Fetch the offending instruction */ - xor t8, k1, 1 /* Prepare t8 for exit */ - and t1, t0, 0xf81f /* Check for entry/exit opcode */ - bne t1, 0xe809, other_ri - -deareg: and t1, t0, 0x0700 /* Isolate the three a-bits */ - srl t1, 6 /* Adjust them so x4 is applied */ - slt t2, t1, 17 /* See if this is the exit instruction */ - beqz t2, doexit - la t2, savea - subu t2, t1 - jr t2 /* Jump into the instruction table */ - rfe /* We run the rest in user-mode */ - - /* This is the entry instruction! */ - sw a3, 12(sp) /* 4: a0-a3 saved */ - sw a2, 8(sp) /* 3: a0-a2 saved */ - sw a1, 4(sp) /* 2: a0-a1 saved */ - sw a0, 0(sp) /* 1: a0 saved */ -savea: /* 0: No arg regs saved */ - -dera: and t1, t0, 0x0020 /* Isolate the save-ra bit */ - move t7, sp /* Temporary SP */ - beq t1, zero, desreg - subu sp, 32 /* Default SP adjustment */ - sw ra, -4(t7) - subu t7, 4 - -desreg: and t1, t0, 0x00c0 /* Isolate the two s-bits */ - beq t1, zero, leave - subu t1, 0x0040 - beq t1, zero, leave /* Only one to save... */ - sw s0, -4(t7) /* Do the first one */ - sw s1, -8(t7) /* Do the last one */ - -leave: jr t8 /* Exit to unmodified EPC */ - nop /* Urgh - the only nop!! */ - -doexf0: mtc1 v0,$f0 /* Copy float value */ - b doex2 - -doexf1: mtc1 v1,$f0 /* Copy double value */ - mtc1 v0,$f1 - b doex2 - -doexit: slt t2, t1, 21 - beq t2, zero, doexf0 - slt t2, t1, 25 - beq t2, zero, doexf1 - -doex2: and t1, t0, 0x0020 /* Isolate ra bit */ - beq t1, zero, dxsreg /* t1 holds ra-bit */ - addu t7, sp, 32 /* Temporary SP */ - lw ra, -4(t7) - subu t7, 4 - -dxsreg: and t1, t0, 0x00c0 /* Isolate the two s-bits */ - beq t1, zero, leavex - subu t1, 0x0040 - beq t1, zero, leavex /* Only one to save... */ - lw s0, -4(t7) /* Do the first one */ - lw s1, -8(t7) /* Do the last one */ - -leavex: jr ra /* Exit to ra */ - addu sp, 32 /* Clean up stack pointer */ - -/* Come here for exceptions we can't handle. */ - -ri_in_32: -other_ri: -check_others: /* call the previous handler */ - la k0,__previous - jr k0 - nop - -__exception_code: - .set noreorder - la k0, __entry_exit_handler -# lui k0, %hi(exception) -# addiu k0, k0, %lo(exception) - jr k0 - nop - .set reorder -__exception_code_end: - - .data -__previous: - .space (__exception_code_end - __exception_code) - .text - - -/* void __install_entry_handler(void) - - Install our entry/exit reserved instruction exception handler. -*/ - .ent __install_entry_handler - .globl __install_entry_handler -__install_entry_handler: - .set noreorder - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,baseaddr - lui a0,0x8000 /* delay slot */ - lui a0,0xbfc0 - addiu a0,a0,0x0100 -baseaddr: - addiu a0,a0,0x080 /* a0 = base vector table address */ - li a1,(__exception_code_end - __exception_code) - la a2,__exception_code - la a3,__previous -/* there must be a better way of doing this???? */ -copyloop: - lw v0,0(a0) - sw v0,0(a3) - lw v0,0(a2) - sw v0,0(a0) - addiu a0,a0,4 - addiu a2,a2,4 - addiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,copyloop - nop - j ra - nop - .set reorder - .end __install_entry_handler - - -/* void __remove_entry_handler(void); - - Remove our entry/exit reserved instruction exception handler. -*/ - - .ent __remove_entry_handler - .globl __remove_entry_handler -__remove_entry_handler: - .set noreorder - - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,res_baseaddr - lui a0,0x8000 /* delay slot */ - lui a0,0xbfc0 - addiu a0,a0,0x0200 -res_baseaddr: - addiu a0,a0,0x0180 /* a0 = base vector table address */ - li a1,(__exception_code_end - __exception_code) - la a3,__previous - -/* there must be a better way of doing this???? */ -res_copyloop: - lw v0,0(a3) - sw v0,0(a0) - addiu a0,a0,4 - addiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,res_copyloop - nop - j ra - nop - .set reorder - .end __remove_entry_handler - - -/* software_init_hook - install entry/exit handler and arrange to have it - removed at exit. This function is called by crt0.S. */ - - .text - .globl software_init_hook - .ent software_init_hook -software_init_hook: - .set noreorder - subu sp, sp, 8 /* allocate stack space */ - sw ra, 4(sp) /* save return address */ - jal __install_entry_handler /* install entry/exit handler */ - nop - lui a0, %hi(__remove_entry_handler) /* arrange for exit to */ - jal atexit /* de-install handler */ - addiu a0, a0, %lo(__remove_entry_handler) /* delay slot */ - lw ra, 4(sp) /* get return address */ - j ra /* return */ - addu sp, sp, 8 /* deallocate stack */ - .set reorder - .end software_init_hook diff --git a/libgloss/mips/idt.ld b/libgloss/mips/idt.ld deleted file mode 100644 index cba8b7b..0000000 --- a/libgloss/mips/idt.ld +++ /dev/null @@ -1,155 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. i.e. the NEC VR4300 (IDT) first free address is actually - 0xa001af20. */ - -ENTRY(_start) -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -lidt -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/idtecoff.ld b/libgloss/mips/idtecoff.ld deleted file mode 100644 index 08534d2..0000000 --- a/libgloss/mips/idtecoff.ld +++ /dev/null @@ -1,93 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. i.e. the NEC VR4300 (IDT) first free address is actually - 0xa001af20. */ - -ENTRY(_start) -STARTUP(crt0.o) -OUTPUT_ARCH("mips:4000") -OUTPUT_FORMAT("ecoff-bigmips", "ecoff-bigmips", "ecoff-littlemips") -GROUP(-lc -lidt -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - . = .; - .rdata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - end = .; - _end = .; -} diff --git a/libgloss/mips/idtmon.S b/libgloss/mips/idtmon.S deleted file mode 100644 index bb15388..0000000 --- a/libgloss/mips/idtmon.S +++ /dev/null @@ -1,46 +0,0 @@ -/* - * idtmon.S -- lo-level entry points into IDT monitor. - * - * Copyright (c) 1996 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#include "regs.S" - - .text - .align 2 - -/* Provide named functions for entry into the IDT monitor: */ -#define INDIRECT(name,index) \ - .globl name; \ - .ent name; \ -name: la $2,+(0xbfc00000+((index)*8)); \ - j $2; \ - .end name - -/* The following magic numbers are for the slots into the IDT monitor: */ -INDIRECT(open,6) -INDIRECT(read,7) -INDIRECT(write,8) -INDIRECT(close,10) -INDIRECT(inbyte,11) -INDIRECT(outbyte,12) -INDIRECT(mon_printf,16) -INDIRECT(_flush_cache,28) -INDIRECT(get_mem_info,55) /* expects pointer to three word vector */ - -/* EOF idtmon.S */ diff --git a/libgloss/mips/jmr3904-io.c b/libgloss/mips/jmr3904-io.c deleted file mode 100644 index 8d43007..0000000 --- a/libgloss/mips/jmr3904-io.c +++ /dev/null @@ -1,104 +0,0 @@ - - -#define READ_UINT8( _register_, _value_ ) \ - ((_value_) = *((volatile unsigned char *)(_register_))) - -#define WRITE_UINT8( _register_, _value_ ) \ - (*((volatile unsigned char *)(_register_)) = (_value_)) - - /* - Board specific addresses for serial chip */ -#define DIAG_BASE 0xfffff300 -#define DIAG_SLCR (DIAG_BASE+0x00) -#define DIAG_SLSR (DIAG_BASE+0x04) -#define DIAG_SLDICR (DIAG_BASE+0x08) -#define DIAG_SLDISR (DIAG_BASE+0x0C) -#define DIAG_SFCR (DIAG_BASE+0x10) -#define DIAG_SBRG (DIAG_BASE+0x14) -#define DIAG_TFIFO (DIAG_BASE+0x20) -#define DIAG_RFIFO (DIAG_BASE+0x30) - -#define BRG_T0 0x0000 -#define BRG_T2 0x0100 -#define BRG_T4 0x0200 -#define BRG_T5 0x0300 - - -#define READ_UINT16( _register_, _value_ ) \ - ((_value_) = *((volatile unsigned short *)(_register_))) - -#define WRITE_UINT16( _register_, _value_ ) \ - (*((volatile unsigned short *)(_register_)) = (_value_)) - -unsigned char -inbyte (void) -{ - unsigned char c; - unsigned short disr; - - for (;;) - { - READ_UINT16 (DIAG_SLDISR, disr); - if (disr & 0x0001) - break; - } - disr = disr & ~0x0001; - READ_UINT8 (DIAG_RFIFO, c); - WRITE_UINT16 (DIAG_SLDISR, disr); - return c; -} - -void -outbyte (unsigned char c) -{ - unsigned short disr; - - for (;;) - { - READ_UINT16 (DIAG_SLDISR, disr); - if (disr & 0x0002) - break; - } - disr = disr & ~0x0002; - WRITE_UINT8 (DIAG_TFIFO, c); - WRITE_UINT16 (DIAG_SLDISR, disr); -} - -/* Stuff required to setup IO on this board */ -void board_serial_init (void) -{ - WRITE_UINT16 (DIAG_SLCR, 0x0020); - WRITE_UINT16 (DIAG_SLDICR, 0x0000); - WRITE_UINT16 (DIAG_SFCR, 0x0000); - WRITE_UINT16 (DIAG_SBRG, BRG_T2 | 5); -} - -/* If you want this to be initialized as part of the stuff which gets called - by crt0, it should be named 'hardware_init_hook'. - Local implementations may want to move or add to this function OR - do the initializations after main() is entered. -*/ -void hardware_init_hook(void) -{ - board_serial_init() ; -} - -/* Structure filled in by get_mem_info. Only the size field is - actually used (by sbrk), so the others aren't even filled in. */ - -struct s_mem -{ - unsigned int size; - unsigned int icsize; - unsigned int dcsize; -}; - -/* mem_size is provided in the linker script so that we don't have to - define it here. */ -extern char _mem_size[]; - -void -get_mem_info (mem) - struct s_mem *mem; -{ - mem->size = (unsigned int)_mem_size; -} diff --git a/libgloss/mips/jmr3904app-java.ld b/libgloss/mips/jmr3904app-java.ld deleted file mode 100644 index b23d8e3..0000000 --- a/libgloss/mips/jmr3904app-java.ld +++ /dev/null @@ -1,127 +0,0 @@ -/* Linker script forJMR 3904 board using Java + qthreads */ - -ENTRY(_start) -OUTPUT_ARCH("mips:3000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -ljmr3904 -lgcc -lgcjcoop) -SEARCH_DIR(.) -__DYNAMIC = 0; - -PROVIDE (_mem_size = 0x100000); /* JMR3904 comes as standard with 512k of RAM */ - -/* Set the size of the stack for Java with qthreads. */ -PROVIDE (_Jv_QthreadsStackSize = 0x10000); - -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0x80008000; - /* This is NOT the address which fits with the monitor from jmr. */ - /* It fits the Cygmon ROMS */ - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - . += 0x2000 ; /* 8k bytes of stack. */ - __stack = ALIGN(64) ; - . = __stack ; - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/jmr3904app.ld b/libgloss/mips/jmr3904app.ld deleted file mode 100644 index f5808fd..0000000 --- a/libgloss/mips/jmr3904app.ld +++ /dev/null @@ -1,156 +0,0 @@ -/* Linker script forJMR 3904 board */ - -ENTRY(_start) -OUTPUT_ARCH("mips:3000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -ljmr3904 -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -PROVIDE (_mem_size = 0x100000); /* JMR3904 comes as standard with 512k of RAM */ - -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0x80008000; - /* This is NOT the address which fits with the monitor from jmr. */ - /* It fits the Cygmon ROMS */ - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - . += 0x2000 ; /* 8k bytes of stack. */ - __stack = ALIGN(64) ; - . = __stack ; - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/jmr3904dram-java.ld b/libgloss/mips/jmr3904dram-java.ld deleted file mode 100644 index ce9595d..0000000 --- a/libgloss/mips/jmr3904dram-java.ld +++ /dev/null @@ -1,130 +0,0 @@ -/* Linker script forJMR 3904 board using Java + qthreads */ - -ENTRY(_start) -OUTPUT_ARCH("mips:3000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -ljmr3904 -lgcc -lgcjcoop) -SEARCH_DIR(.) -__DYNAMIC = 0; - -PROVIDE (_mem_size = 0x100000); /* JMR3904 comes as standard with 512k of RAM */ - /* but this is 1 Mb */ - -/* Set the size of the stack for Java with qthreads. */ -PROVIDE (_Jv_QthreadsStackSize = 0x10000); - -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - /* Load everything into DRAM, except for the stack. Put stack in SRAM */ - . = 0x88000000; - /* This is NOT the address which fits with the monitor from jmr. */ - /* It fits the Cygmon ROMS */ - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - . = .; - .rdata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* Put stack in SRAM (8 Kb); this size is the same as the stack from - the original script (when everything was in SRAM). */ - __stack = 0x8000A000; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/jmr3904dram.ld b/libgloss/mips/jmr3904dram.ld deleted file mode 100644 index cf28364..0000000 --- a/libgloss/mips/jmr3904dram.ld +++ /dev/null @@ -1,127 +0,0 @@ -/* Linker script forJMR 3904 board */ - -ENTRY(_start) -OUTPUT_ARCH("mips:3000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -ljmr3904 -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -PROVIDE (_mem_size = 0x100000); /* JMR3904 comes as standard with 512k of RAM */ - /* but this is 1 Mb */ - -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - /* Load everything into DRAM, except for the stack. Put stack in SRAM */ - . = 0x88000000; - /* This is NOT the address which fits with the monitor from jmr. */ - /* It fits the Cygmon ROMS */ - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - . = .; - .rdata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* Put stack in SRAM (8 Kb); this size is the same as the stack from - the original script (when everything was in SRAM). */ - __stack = 0x8000A000; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/lsi.ld b/libgloss/mips/lsi.ld deleted file mode 100644 index c567157..0000000 --- a/libgloss/mips/lsi.ld +++ /dev/null @@ -1,121 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. */ - -ENTRY(_start) -OUTPUT_ARCH("mips:4000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -llsi -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - CONSTRUCTORS - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - end = .; - _end = .; -} diff --git a/libgloss/mips/lsi33k-stub.c b/libgloss/mips/lsi33k-stub.c deleted file mode 100644 index dc0b86a..0000000 --- a/libgloss/mips/lsi33k-stub.c +++ /dev/null @@ -1,595 +0,0 @@ -/**************************************************************************** - * - * Module name: remcom.c $ - * Revision: 1.34 $ - * Date: 91/03/09 12:29:49 $ - * Contributor: Lake Stevens Instrument Division$ - * - * Description: low level support for gdb debugger. $ - * - * Considerations: only works on target hardware $ - * - * Written by: Glenn Engel $ - * ModuleState: Experimental $ - * - * NOTES: See Below $ - * - * Modified for SPARC by Stu Grossman, Cygnus Support. - * - * This code has been extensively tested on the Fujitsu SPARClite demo board. - * - * To enable debugger support, two things need to happen. One, a - * call to set_debug_traps() is necessary in order to allow any breakpoints - * or error conditions to be properly intercepted and reported to gdb. - * Two, a breakpoint needs to be generated to begin communication. This - * is most easily accomplished by a call to breakpoint(). Breakpoint() - * simulates a breakpoint by executing a trap #1. - * - ************* - * - * The following gdb commands are supported: - * - * command function Return value - * - * g return the value of the CPU registers hex data or ENN - * G set the value of the CPU registers OK or ENN - * - * mAA..AA,LLLL Read LLLL bytes at address AA..AA hex data or ENN - * MAA..AA,LLLL: Write LLLL bytes at address AA.AA OK or ENN - * - * c Resume at current address SNN ( signal NN) - * cAA..AA Continue at address AA..AA SNN - * - * s Step one instruction SNN - * sAA..AA Step one instruction from AA..AA SNN - * - * k kill - * - * ? What was the last sigval ? SNN (signal NN) - * - * bBB..BB Set baud rate to BB..BB OK or BNN, then sets - * baud rate - * - * All commands and responses are sent with a packet which includes a - * checksum. A packet consists of - * - * $<packet info>#<checksum>. - * - * where - * <packet info> :: <characters representing the command or response> - * <checksum> :: < two hex digits computed as modulo 256 sum of <packetinfo>> - * - * When a packet is received, it is first acknowledged with either '+' or '-'. - * '+' indicates a successful transfer. '-' indicates a failed transfer. - * - * Example: - * - * Host: Reply: - * $m0,10#2a +$00010203040506070809101112131415#42 - * - ****************************************************************************/ - -#include <string.h> -#include <signal.h> -#include "dbgmon.h" -#include "parser.h" -#include "ctype.h" - -/************************************************************************ - * - * external low-level support routines - */ - -extern putchar(); /* write a single character */ -extern getchar(); /* read and return a single char */ - -/************************************************************************/ - -/* Stuff for stdio-like gets_debugger_check() */ - -#define CTRL(x) ('x'&0x1f) -#define DEL 0x7f -#define INTR CTRL(C) -#define BELL 0x7 -#define PROMPT "? " - -#define BUFSIZE 512 /* Big enough for register packets */ - -static int initialized = 0; /* !0 means we've been initialized */ - -static char hexchars[]="0123456789abcdef"; - -extern unsigned int _regs[]; /* Saved registers from client */ - -/* Convert ch from a hex digit to an int */ - -static int -hex(ch) - unsigned char ch; -{ - if (ch >= 'a' && ch <= 'f') - return ch-'a'+10; - if (ch >= '0' && ch <= '9') - return ch-'0'; - if (ch >= 'A' && ch <= 'F') - return ch-'A'+10; - return -1; -} - -/* scan for the sequence $<data>#<checksum> */ - -static void -getpacket(buffer) - char *buffer; -{ - unsigned char checksum; - unsigned char xmitcsum; - int i; - int count; - unsigned char ch; - - /* At this point, the start character ($) has been received through - * the debug monitor parser. Get the remaining characters and - * process them. - */ - - checksum = 0; - xmitcsum = -1; - count = 0; - - /* read until a # or end of buffer is found */ - - while (count < BUFSIZE) - { - ch = getchar(); - if (ch == '#') - break; - checksum = checksum + ch; - buffer[count] = ch; - count = count + 1; - } - - if (count >= BUFSIZE) - buffer[count] = 0; - - if (ch == '#') - { - xmitcsum = hex(getchar()) << 4; - xmitcsum |= hex(getchar()); -#if 0 - /* Humans shouldn't have to figure out checksums to type to it. */ - putchar ('+'); - return; -#endif - - if (checksum != xmitcsum) - { - putchar('-'); /* failed checksum */ - return; /* Back to monitor loop */ - } - else - { - putchar('+'); /* successful transfer */ - - /* if a sequence char is present, reply the sequence ID */ - - if (buffer[2] == ':') - { - putchar(buffer[0]); - putchar(buffer[1]); - - /* remove sequence chars from buffer */ - - count = strlen(buffer); - for (i=3; i <= count; i++) - buffer[i-3] = buffer[i]; - } - - /* Buffer command received- go and process it. */ - - - } - } -} - - -/* send the packet in buffer. */ - -static void -putpacket(buffer) - unsigned char *buffer; -{ - unsigned char checksum; - int count; - unsigned char ch; - - /* $<packet info>#<checksum>. */ - do - { - putchar('$'); - checksum = 0; - count = 0; - - while (ch = buffer[count]) - { - if (! putchar(ch)) - return; - checksum += ch; - count += 1; - } - - putchar('#'); - putchar(hexchars[checksum >> 4]); - putchar(hexchars[checksum & 0xf]); - - } - while (getchar() != '+'); -} - -static char remcomInBuffer[BUFSIZE]; -static char remcomOutBuffer[BUFSIZE]; - -/* Indicate to caller of mem2hex or hex2mem that there has been an error. */ - -static volatile int mem_err = 0; - -/* Convert the memory pointed to by mem into hex, placing result in buf. - * Return a pointer to the last char put in buf (null), in case of mem fault, - * return 0. - * If MAY_FAULT is non-zero, then we will handle memory faults by returning - * a 0, else treat a fault like any other fault in the stub. - */ - -static unsigned char * -mem2hex(mem, buf, count, may_fault) - unsigned char *mem; - unsigned char *buf; - int count; - int may_fault; -{ - unsigned char ch; - - while (count-- > 0) - { - ch = *mem++; - if (mem_err) - return 0; - *buf++ = hexchars[ch >> 4]; - *buf++ = hexchars[ch & 0xf]; - } - - *buf = 0; - - return buf; -} - -/* convert the hex array pointed to by buf into binary to be placed in mem - * return a pointer to the character AFTER the last byte written */ - -static char * -hex2mem(buf, mem, count, may_fault) - unsigned char *buf; - unsigned char *mem; - int count; - int may_fault; -{ - int i; - unsigned char ch; - - for (i=0; i<count; i++) - { - ch = hex(*buf++) << 4; - ch |= hex(*buf++); - *mem++ = ch; - if (mem_err) - return 0; - } - - return mem; -} - -/* This table contains the mapping between SPARC hardware trap types, and - signals, which are primarily what GDB understands. It also indicates - which hardware traps we need to commandeer when initializing the stub. */ - -static struct hard_trap_info -{ - unsigned char tt; /* Trap type code for SPARClite */ - unsigned char signo; /* Signal that we map this trap into */ -} hard_trap_info[] = { - {0x06, SIGSEGV}, /* instruction access error */ - {0x0a, SIGILL}, /* privileged instruction */ - {0x0a, SIGILL}, /* illegal instruction */ - {0x0b, SIGEMT}, /* cp disabled */ - {0x07, SIGSEGV}, /* data access exception */ - {0x09, SIGTRAP}, /* ta 1 - normal breakpoint instruction */ - {0, 0} /* Must be last */ -}; - -/* Convert the SPARC hardware trap type code to a unix signal number. */ - -static int -computeSignal(tt) - int tt; -{ - struct hard_trap_info *ht; - - for (ht = hard_trap_info; ht->tt && ht->signo; ht++) - if (ht->tt == tt) - return ht->signo; - - return SIGHUP; /* default for things we don't know about */ -} - -/* - * While we find nice hex chars, build an int. - * Return number of chars processed. - */ - -static int -hexToInt(char **ptr, int *intValue) -{ - int numChars = 0; - int hexValue; - - *intValue = 0; - - while (**ptr) - { - hexValue = hex(**ptr); - if (hexValue < 0) - break; - - *intValue = (*intValue << 4) | hexValue; - numChars ++; - - (*ptr)++; - } - - return (numChars); -} - -/* This function lets GDB know that an exception has occured. */ - -static void -debug_handle_exception () -{ - int tt; /* Trap type */ - int sigval; - char *ptr; - - tt = (_regs[R_CAUSE] >> 2) & 0x0f; - - /* reply to host that an exception has occurred */ - sigval = computeSignal(tt); - ptr = remcomOutBuffer; - - *ptr++ = 'T'; - *ptr++ = hexchars[sigval >> 4]; - *ptr++ = hexchars[sigval & 0xf]; - - *ptr++ = hexchars[R_EPC >> 4]; - *ptr++ = hexchars[R_EPC & 0xf]; - *ptr++ = ':'; - ptr = mem2hex((char *)&_regs[R_EPC], ptr, 4, 0); - *ptr++ = ';'; - - *ptr++ = hexchars[R_FP >> 4]; - *ptr++ = hexchars[R_FP & 0xf]; - *ptr++ = ':'; - ptr = mem2hex((char *)&_regs[R_FP], ptr, 4, 0); - *ptr++ = ';'; - - *ptr++ = hexchars[R_SP >> 4]; - *ptr++ = hexchars[R_SP & 0xf]; - *ptr++ = ':'; - ptr = mem2hex((char *)&_regs[R_SP], ptr, 4, 0); - *ptr++ = ';'; - - *ptr++ = 0; - - putpacket(remcomOutBuffer); - - return; -} - - -void process_packet() -{ - - char *ptr; - int length; - int addr; - int sigval; - int tt; /* Trap type */ - - remcomOutBuffer[0] = 0; - getpacket(remcomInBuffer); - switch (remcomInBuffer[0]) - { - -/* Return Last SIGVAL */ - -case '?': - tt = (_regs[R_CAUSE] >> 2) & 0x0f; - sigval = computeSignal(tt); - remcomOutBuffer[0] = 'S'; - remcomOutBuffer[1] = hexchars[sigval >> 4]; - remcomOutBuffer[2] = hexchars[sigval & 0xf]; - remcomOutBuffer[3] = 0; - break; - - /* toggle debug flag */ - - case 'd': - break; - - /* Return the values of the CPU registers */ - - case 'g': - ptr = remcomOutBuffer; - ptr = mem2hex((char *)_regs, ptr, 32 * 4, 0); /* General Purpose Registers */ - ptr = mem2hex((char *)&_regs[R_EPC], ptr, 9 * 4, 0); /* CP0 Registers */ - break; - - /* set the value of the CPU registers - return OK */ - - case 'G': - ptr = &remcomInBuffer[1]; - hex2mem(ptr, (char *)_regs, 32 * 4, 0); /* General Purpose Registers */ - hex2mem(ptr + 32 * 4 * 2, (char *)&_regs[R_EPC], 9 * 4, 0); /* CP0 Registers */ - strcpy(remcomOutBuffer,"OK"); - break; - - /* mAA..AA,LLLL Read LLLL bytes at address AA..AA */ - - case 'm': - ptr = &remcomInBuffer[1]; - if (hexToInt(&ptr, &addr) && *ptr++ == ',' && hexToInt(&ptr, &length)) - { - if (mem2hex((char *)addr, remcomOutBuffer, length, 1)) - break; - strcpy (remcomOutBuffer, "E03"); - } - else - strcpy(remcomOutBuffer,"E01"); - break; - - /* MAA..AA,LLLL: Write LLLL bytes at address AA.AA return OK */ - - case 'M': - ptr = &remcomInBuffer[1]; - if (hexToInt(&ptr, &addr) && *ptr++ == ',' && hexToInt(&ptr, &length) && *ptr++ == ':') - { - if (hex2mem(ptr, (char *)addr, length, 1)) - strcpy(remcomOutBuffer, "OK"); - else - strcpy(remcomOutBuffer, "E03"); - } - else - strcpy(remcomOutBuffer, "E02"); - break; - - /* cAA..AA Continue at address AA..AA(optional) */ - - case 'c': - - /* try to read optional parameter, pc unchanged if no parm */ - - ptr = &remcomInBuffer[1]; - if (hexToInt(&ptr, &addr)) - { - gdb_go ( addr ); - } - else - { - dbg_cont(); - } - return; - - /* kill the program */ - - case 'k': - break; - - /* Reset */ - - case 'r': - break; - - /* switch */ - - } - - /* Reply to the request */ - - putpacket(remcomOutBuffer); -} - - -/* - * gets_debugger_check - This is the same as the stdio gets, but we also - * check for a leading $ in the buffer. This so we - * gracefully handle the GDB protocol packets. - */ - -char * -gets_debugger_check(buf) -char *buf; -{ - register char c; - char *bufp; - - bufp = buf; - for (;;) - { - c = getchar(); - switch (c) - { - - /* quote next char */ - - case '$': - if ( buf == bufp ) - process_packet(); - break; - - case CTRL(V): - c = getchar(); - if (bufp < &buf[LINESIZE-3]) - { - rmw_byte (bufp++,c); - showchar(c); - } - else - { - putchar(BELL); - } - break; - - case '\n': - case '\r': - putchar('\n'); - rmw_byte (bufp,0); - return(buf); - - case CTRL(H): - case DEL: - if (bufp > buf) - { - bufp--; - putchar(CTRL(H)); - putchar(' '); - putchar(CTRL(H)); - } - break; - - case CTRL(U): - if (bufp > buf) - { - printf("^U\n%s", PROMPT); - bufp = buf; - } - break; - - case '\t': - c = ' '; - - default: - /* - * Make sure there's room for this character - * plus a trailing \n and 0 byte - */ - if (isprint(c) && bufp < &buf[LINESIZE-3]) - { - rmw_byte ( bufp++, c ); - putchar(c); - } - else - { - putchar(BELL); - } - break; - } - } -} diff --git a/libgloss/mips/lsi33k-stub.h b/libgloss/mips/lsi33k-stub.h deleted file mode 100644 index f885c27..0000000 --- a/libgloss/mips/lsi33k-stub.h +++ /dev/null @@ -1,179 +0,0 @@ -/*STARTINC - * - * COPYRIGHT (C) 1991, 1992 ARRAY TECHNOLOGY CORPORATION - * All Rights Reserved - * - * This software is confidential information which is proprietary to and - * a trade secret of ARRAY Technology Corporation. Use, duplication, or - * disclosure is subject to the terms of a separate license agreement. - * - * - * NAME: - * - * - * DESCRIPTION: - * - * - *ENDINC - */ - -/* %Q% %I% %M% */ - -/* - * Copyright 1985 by MIPS Computer Systems, Inc. - */ - -/* - * dbgmon.h -- debugging monitor definitions - */ - -/* - * catch bogus compiles - */ -#if defined(MIPSEB) && defined(MIPSEL) -# include "error -- both MIPSEB and MIPSEL defined" -#endif - -#if !defined(MIPSEB) && !defined(MIPSEL) -# include "error -- neither MIPSEB or MIPSEL defined" -#endif - -/* - * PROM_STACK is the address of the first word above the prom stack - * the prom stack grows downward from the first word less than PROM_STACK - */ -#define PROM_STACK 0xa0010000 - -/* - * register names - */ -#define R_R0 0 -#define R_R1 1 -#define R_R2 2 -#define R_R3 3 -#define R_R4 4 -#define R_R5 5 -#define R_R6 6 -#define R_R7 7 -#define R_R8 8 -#define R_R9 9 -#define R_R10 10 -#define R_R11 11 -#define R_R12 12 -#define R_R13 13 -#define R_R14 14 -#define R_R15 15 -#define R_R16 16 -#define R_R17 17 -#define R_R18 18 -#define R_R19 19 -#define R_R20 20 -#define R_R21 21 -#define R_R22 22 -#define R_R23 23 -#define R_R24 24 -#define R_R25 25 -#define R_R26 26 -#define R_R27 27 -#define R_R28 28 -#define R_R29 29 -#define R_R30 30 -#define R_R31 31 -#define R_F0 32 -#define R_F1 33 -#define R_F2 34 -#define R_F3 35 -#define R_F4 36 -#define R_F5 37 -#define R_F6 38 -#define R_F7 39 -#define R_F8 40 -#define R_F9 41 -#define R_F10 42 -#define R_F11 43 -#define R_F12 44 -#define R_F13 45 -#define R_F14 46 -#define R_F15 47 -#define R_F16 48 -#define R_F17 49 -#define R_F18 50 -#define R_F19 51 -#define R_F20 52 -#define R_F21 53 -#define R_F22 54 -#define R_F23 55 -#define R_F24 56 -#define R_F25 57 -#define R_F26 58 -#define R_F27 59 -#define R_F28 60 -#define R_F29 61 -#define R_F30 62 -#define R_F31 63 -#define R_EPC 64 -#define R_MDHI 65 -#define R_MDLO 66 -#define R_SR 67 -#define R_CAUSE 68 -#define R_BADVADDR 69 -#define R_DCIC 70 -#define R_BPC 71 -#define R_BDA 72 -#define R_EXCTYPE 73 -#define NREGS 74 - -/* - * compiler defined bindings - */ -#define R_ZERO R_R0 -#define R_AT R_R1 -#define R_V0 R_R2 -#define R_V1 R_R3 -#define R_A0 R_R4 -#define R_A1 R_R5 -#define R_A2 R_R6 -#define R_A3 R_R7 -#define R_T0 R_R8 -#define R_T1 R_R9 -#define R_T2 R_R10 -#define R_T3 R_R11 -#define R_T4 R_R12 -#define R_T5 R_R13 -#define R_T6 R_R14 -#define R_T7 R_R15 -#define R_S0 R_R16 -#define R_S1 R_R17 -#define R_S2 R_R18 -#define R_S3 R_R19 -#define R_S4 R_R20 -#define R_S5 R_R21 -#define R_S6 R_R22 -#define R_S7 R_R23 -#define R_T8 R_R24 -#define R_T9 R_R25 -#define R_K0 R_R26 -#define R_K1 R_R27 -#define R_GP R_R28 -#define R_SP R_R29 -#define R_FP R_R30 -#define R_RA R_R31 - -/* - * memory reference widths - */ -#define SW_BYTE 1 -#define SW_HALFWORD 2 -#define SW_WORD 4 - -/* - * Monitor modes - */ -#define MODE_DBGMON 0 /* debug monitor is executing */ -#define MODE_CLIENT 1 /* client is executing */ - -/* - * String constants - */ -#define DEFAULT_STRLEN 70 /* default max strlen for string cmd */ - diff --git a/libgloss/mips/lsipmon.S b/libgloss/mips/lsipmon.S deleted file mode 100644 index f9083d6..0000000 --- a/libgloss/mips/lsipmon.S +++ /dev/null @@ -1,2 +0,0 @@ -#define LSI 1 -#include "pmon.S" diff --git a/libgloss/mips/nullmon.c b/libgloss/mips/nullmon.c deleted file mode 100644 index 12a157e..0000000 --- a/libgloss/mips/nullmon.c +++ /dev/null @@ -1,69 +0,0 @@ -/* nullmon.c - Stub or monitor services. - * - * Copyright (c) 1998 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -/* This is a ROMSTUB - Various libraries in libgloss may reference board specific services. - These are often performed by system calls and by rom specific - interfaces such as dvemon.c This file defines the null interface in - which the rom monitor either does not exist or is not used. - Linking with this file supports applications which only exercise - the processor, specifically, the GDB test suite. - By linking this object in rather than a monitor specific support - we can insure that the testsuite will run without references or - linkages to nonexistent monitor services. - Similarly, every service provided by this file muse be provided by all - monitor speciifc interfaces. - PLEASE DO NOT MAKE THIS FILE SPECIFIC TO ANY MONITOR - */ - -/* This form is giving linker relocation errors */ -#if ! defined(BOARD_MEM_SIZE) -#define BOARD_MEM_SIZE 0x100000 /* About a megabyte */ -#endif -extern unsigned char _ftext ; /* Defined in nullmon.ld */ -extern unsigned char _end ; /* Defined in nullmon.ld */ - -#if defined(FIXME_WARNINGS) -#warning("FIXME: struct s_mem belongs in a header file") -#endif -struct s_mem -{ unsigned int size; - unsigned int icsize; - unsigned int dcsize; -}; - -void -get_mem_info (mem) - struct s_mem *mem; -{ char * t1, * t2 ; - unsigned long long tmp ; - t1 = & _ftext ; - t2 = & _end ; - tmp = (unsigned long long) (t2 - t1) ; - tmp = (unsigned long long) BOARD_MEM_SIZE - tmp ; - mem->size = tmp ; -} - -/* SYSTEM INTERFACE - Since we are defining a NULL operating environment here, I am - entering the stub definitions for the GNUpro libraries, System Calls. - I would rather not to even pretend to support these functions but, they - get pulled in by other libraries. -*/ - -int read(int file, char * ptr , int len) { return 0 ; } -int close (int file) { return -1 ; } -int write(int file , char * ptr, int len) { return 0 ; } -/*eof*/ diff --git a/libgloss/mips/nullmon.ld b/libgloss/mips/nullmon.ld deleted file mode 100644 index 82d8016..0000000 --- a/libgloss/mips/nullmon.ld +++ /dev/null @@ -1,156 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. */ - -ENTRY(_start) -OUTPUT_ARCH("mips:4000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -lnullmon -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - . = ALIGN(64) ; - end = .; - _end = .; - - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/pmon.S b/libgloss/mips/pmon.S deleted file mode 100644 index a4496c9..0000000 --- a/libgloss/mips/pmon.S +++ /dev/null @@ -1,177 +0,0 @@ -/* - * pmon.S -- low-level entry points into PMON monitor. - * - * Copyright (c) 1996, 1997 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#if __mips < 3 - /* This machine does not support 64-bit operations. */ - #define ADDU addu - #define SUBU subu -#else - /* This machine supports 64-bit operations. */ - #define ADDU daddu - #define SUBU dsubu -#endif - -#include "regs.S" - - .text - .align 2 - -#ifdef LSI - #define PMON_VECTOR 0xffffffffbfc00200 -#else - #define PMON_VECTOR 0xffffffffbfc00500 -#endif - -#ifndef __mips_eabi -/* Provide named functions for entry into the monitor: */ -#define INDIRECT(name,index) \ - .globl name; \ - .ent name; \ - .set noreorder; \ -name: la $2,+(PMON_VECTOR+((index)*4)); \ - lw $2,0($2); \ - j $2; \ - nop; \ - .set reorder; \ - .end name - -#else -#define INDIRECT(name,index) \ - .globl name; \ - .ent name; \ - .set noreorder; \ -name: la $2,+(PMON_VECTOR+((index)*4)); \ - lw $2,0($2); \ - SUBU sp,sp,0x40; \ - sd ra,0x38(sp); \ - sd fp,0x30(sp); \ - jal $2; \ - move fp,sp; \ - ld ra,0x38(sp); \ - ld fp,0x30(sp); \ - j ra; \ - ADDU sp,sp,0x40; \ - .set reorder; \ - .end name -#endif - - -/* The following magic numbers are for the slots into the PMON monitor */ -/* The first are used as the lo-level library run-time: */ -INDIRECT(read,0) -INDIRECT(write,1) -INDIRECT(open,2) -INDIRECT(close,3) -/* The following are useful monitor routines: */ -INDIRECT(mon_ioctl,4) -INDIRECT(mon_printf,5) -INDIRECT(mon_vsprintf,6) -INDIRECT(mon_ttctl,7) -INDIRECT(mon_cliexit,8) -INDIRECT(mon_getenv,9) -INDIRECT(mon_onintr,10) -INDIRECT(mon_flush_cache,11) -INDIRECT(_flush_cache,11) -INDIRECT(mon_exception,12) - -/* The following routine is required by the "print()" function: */ - .globl outbyte - .ent outbyte - .set noreorder -outbyte: - subu sp,sp,0x20 /* allocate stack space for string */ - sd ra,0x18(sp) /* stack return address */ - sd fp,0x10(sp) /* stack frame-pointer */ - move fp,sp /* take a copy of the stack pointer */ - /* We leave so much space on the stack for the string (16 - characters), since the call to mon_printf seems to corrupt - the 8bytes at offset 8 into the string/stack. */ - sb a0,0x00(sp) /* character to print */ - sb z0,0x01(sp) /* NUL terminator */ - jal mon_printf /* and output the string */ - move a0,sp /* take a copy of the string pointer {DELAY SLOT} */ - - move sp,fp /* recover stack pointer */ - ld ra,0x18(sp) /* recover return address */ - ld fp,0x10(sp) /* recover frame-pointer */ - j ra /* return to the caller */ - addu sp,sp,0x20 /* dump the stack space {DELAY SLOT} */ - .set reorder - .end outbyte - -/* The following routine is required by the "sbrk()" function: */ - .globl get_mem_info - .ent get_mem_info - .set noreorder -get_mem_info: - # in: a0 = pointer to 3 word structure - # out: void - subu sp,sp,0x18 /* create some stack space */ - sd ra,0x00(sp) /* stack return address */ - sd fp,0x08(sp) /* stack frame-pointer */ - sd a0,0x10(sp) /* stack structure pointer */ - move fp,sp /* take a copy of the stack pointer */ - - # The monitor has already sized memory, but unfortunately we - # do not have access to the data location containing the - # memory size. - - jal __sizemem - nop - - ld a0,0x10(sp) # recover structure pointer - sw v0,0(a0) # amount of memory available - - # Deal with getting the cache size information: - mfc0 a1, C0_CONFIG - nop - nop - andi a2,a1,0x7 << 9 # bits 11..9 for instruction cache size - sll a2,a2,12 - 8 - sw a2,4(a0) - andi a2,a1,0x7 << 6 # bits 8..6 for data cache size - sll a2,a2,12 - 5 - sw a2,8(a0) # data cache size - # - move sp,fp /* recover stack pointer */ - ld ra,0x00(sp) /* recover return address */ - ld fp,0x08(sp) /* recover frame-pointer */ - j ra /* return to the caller */ - addu sp,sp,0x18 /* restore stack pointer {DELAY SLOT} */ - .set reorder - .end get_mem_info - -#ifdef LSI - -# For the LSI MiniRISC board, we can safely assume that we have -# at least one megabyte of RAM. - - .globl __sizemem - .ent __sizemem -__sizemem: - li v0,0x100000 - j ra - .end __sizemem -#else - - -#endif -/* EOF pmon.S */ diff --git a/libgloss/mips/pmon.ld b/libgloss/mips/pmon.ld deleted file mode 100644 index f8dc54b..0000000 --- a/libgloss/mips/pmon.ld +++ /dev/null @@ -1,155 +0,0 @@ -/* The following TEXT start address leaves space for the monitor - workspace. */ - -ENTRY(_start) -OUTPUT_ARCH("mips:4000") -OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips") -GROUP(-lc -lpmon -lgcc) -SEARCH_DIR(.) -__DYNAMIC = 0; - -/* - * Allocate the stack to be at the top of memory, since the stack - * grows down - */ -PROVIDE (__stack = 0); -/* PROVIDE (__global = 0); */ - -/* - * Initalize some symbols to be zero so we can reference them in the - * crt0 without core dumping. These functions are all optional, but - * we do this so we can have our crt0 always use them if they exist. - * This is so BSPs work better when using the crt0 installed with gcc. - * We have to initalize them twice, so we multiple object file - * formats, as some prepend an underscore. - */ -PROVIDE (hardware_init_hook = 0); -PROVIDE (software_init_hook = 0); - -SECTIONS -{ - . = 0xA0020000; - .text : { - _ftext = . ; - *(.init) - eprol = .; - *(.text) - *(.text.*) - *(.gnu.linkonce.t*) - *(.mips16.fn.*) - *(.mips16.call.*) - PROVIDE (__runtime_reloc_start = .); - *(.rel.sdata) - PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } - - .ctors : - { - /* gcc uses crtbegin.o to find the start of - the constructors, so we make sure it is - first. Because this is a wildcard, it - doesn't matter if the user does not - actually link against crtbegin.o; the - linker won't look for a file to match a - wildcard. The wildcard also means that it - doesn't matter which directory crtbegin.o - is in. */ - - KEEP (*crtbegin.o(.ctors)) - - /* We don't want to include the .ctor section from - from the crtend.o file until after the sorted ctors. - The .ctor section from the crtend file contains the - end of ctors marker and it must be last */ - - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - - .dtors : - { - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - - . = .; - .rodata : { - *(.rdata) - *(.rodata) - *(.rodata.*) - *(.gnu.linkonce.r*) - } - _fdata = ALIGN(16); - .data : { - *(.data) - *(.data.*) - *(.gnu.linkonce.d*) - } - . = ALIGN(8); - _gp = . + 0x8000; - __global = _gp; - .lit8 : { - *(.lit8) - } - .lit4 : { - *(.lit4) - } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); - edata = .; - _edata = .; - _fbss = .; - .sbss : { - *(.sbss) - *(.scommon) - } - .bss : { - _bss_start = . ; - *(.bss) - *(COMMON) - } - - end = .; - _end = .; - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to - the beginning of the section so we begin them at 0. */ - - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } -} diff --git a/libgloss/mips/regs.S b/libgloss/mips/regs.S deleted file mode 100644 index cf1f9d4..0000000 --- a/libgloss/mips/regs.S +++ /dev/null @@ -1,151 +0,0 @@ -/* - * regs.S -- standard MIPS register names. - * - * Copyright (c) 1995 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -/* Standard MIPS register names: */ -#define zero $0 -#define z0 $0 -#define v0 $2 -#define v1 $3 -#define a0 $4 -#define a1 $5 -#define a2 $6 -#define a3 $7 -#define t0 $8 -#define t1 $9 -#define t2 $10 -#define t3 $11 -#define t4 $12 -#define t5 $13 -#define t6 $14 -#define t7 $15 -#define s0 $16 -#define s1 $17 -#define s2 $18 -#define s3 $19 -#define s4 $20 -#define s5 $21 -#define s6 $22 -#define s7 $23 -#define t8 $24 -#define t9 $25 -#define k0 $26 /* kernel private register 0 */ -#define k1 $27 /* kernel private register 1 */ -#define gp $28 /* global data pointer */ -#define sp $29 /* stack-pointer */ -#define fp $30 /* frame-pointer */ -#define ra $31 /* return address */ -#define pc $pc /* pc, used on mips16 */ - -#define fp0 $f0 -#define fp1 $f1 - -/* Useful memory constants: */ -#define K0BASE 0x80000000 -#ifndef __mips64 -#define K1BASE 0xA0000000 -#else -#define K1BASE 0xFFFFFFFFA0000000LL -#endif - -#define PHYS_TO_K1(a) ((unsigned)(a) | K1BASE) - -/* Standard Co-Processor 0 register numbers: -#define C0_COUNT $9 /* Count Register */ -#define C0_SR $12 /* Status Register */ -#define C0_CAUSE $13 /* last exception description */ -#define C0_EPC $14 /* Exception error address */ -#define C0_PRID $15 /* Processor Revision ID */ -#define C0_CONFIG $16 /* CPU configuration */ - -/* Standard Processor Revision ID Register field offsets */ -#define PR_IMP 8 - -/* Standard Config Register field offsets */ -#define CR_DB 4 -#define CR_IB 5 -#define CR_DC 6 /* NOTE v4121 semantics != 43,5xxx semantics */ -#define CR_IC 9 /* NOTE v4121 semantics != 43,5xxx semantics */ -#define CR_SC 17 -#define CR_SS 20 -#define CR_SB 22 - - -/* Standard Status Register bitmasks: */ -#define SR_CU1 0x20000000 /* Mark CP1 as usable */ -#define SR_FR 0x04000000 /* Enable MIPS III FP registers */ -#define SR_BEV 0x00400000 /* Controls location of exception vectors */ -#define SR_PE 0x00100000 /* Mark soft reset (clear parity error) */ - -#define SR_KX 0x00000080 /* Kernel extended addressing enabled */ -#define SR_SX 0x00000040 /* Supervisor extended addressing enabled */ -#define SR_UX 0x00000020 /* User extended addressing enabled */ - -/* Standard (R4000) cache operations. Taken from "MIPS R4000 - Microprocessor User's Manual" 2nd edition: */ - -#define CACHE_I (0) /* primary instruction */ -#define CACHE_D (1) /* primary data */ -#define CACHE_SI (2) /* secondary instruction */ -#define CACHE_SD (3) /* secondary data (or combined instruction/data) */ - -#define INDEX_INVALIDATE (0) /* also encodes WRITEBACK if CACHE_D or CACHE_SD */ -#define INDEX_LOAD_TAG (1) -#define INDEX_STORE_TAG (2) -#define CREATE_DIRTY_EXCLUSIVE (3) /* CACHE_D and CACHE_SD only */ -#define HIT_INVALIDATE (4) -#define CACHE_FILL (5) /* CACHE_I only */ -#define HIT_WRITEBACK_INVALIDATE (5) /* CACHE_D and CACHE_SD only */ -#define HIT_WRITEBACK (6) /* CACHE_I, CACHE_D and CACHE_SD only */ -#define HIT_SET_VIRTUAL (7) /* CACHE_SI and CACHE_SD only */ - -#define BUILD_CACHE_OP(o,c) (((o) << 2) | (c)) - -/* Individual cache operations: */ -#define INDEX_INVALIDATE_I BUILD_CACHE_OP(INDEX_INVALIDATE,CACHE_I) -#define INDEX_WRITEBACK_INVALIDATE_D BUILD_CACHE_OP(INDEX_INVALIDATE,CACHE_D) -#define INDEX_INVALIDATE_SI BUILD_CACHE_OP(INDEX_INVALIDATE,CACHE_SI) -#define INDEX_WRITEBACK_INVALIDATE_SD BUILD_CACHE_OP(INDEX_INVALIDATE,CACHE_SD) - -#define INDEX_LOAD_TAG_I BUILD_CACHE_OP(INDEX_LOAD_TAG,CACHE_I) -#define INDEX_LOAD_TAG_D BUILD_CACHE_OP(INDEX_LOAD_TAG,CACHE_D) -#define INDEX_LOAD_TAG_SI BUILD_CACHE_OP(INDEX_LOAD_TAG,CACHE_SI) -#define INDEX_LOAD_TAG_SD BUILD_CACHE_OP(INDEX_LOAD_TAG,CACHE_SD) - -#define INDEX_STORE_TAG_I BUILD_CACHE_OP(INDEX_STORE_TAG,CACHE_I) -#define INDEX_STORE_TAG_D BUILD_CACHE_OP(INDEX_STORE_TAG,CACHE_D) -#define INDEX_STORE_TAG_SI BUILD_CACHE_OP(INDEX_STORE_TAG,CACHE_SI) -#define INDEX_STORE_TAG_SD BUILD_CACHE_OP(INDEX_STORE_TAG,CACHE_SD) - -#define CREATE_DIRTY_EXCLUSIVE_D BUILD_CACHE_OP(CREATE_DIRTY_EXCLUSIVE,CACHE_D) -#define CREATE_DIRTY_EXCLUSIVE_SD BUILD_CACHE_OP(CREATE_DIRTY_EXCLUSIVE,CACHE_SD) - -#define HIT_INVALIDATE_I BUILD_CACHE_OP(HIT_INVALIDATE,CACHE_I) -#define HIT_INVALIDATE_D BUILD_CACHE_OP(HIT_INVALIDATE,CACHE_D) -#define HIT_INVALIDATE_SI BUILD_CACHE_OP(HIT_INVALIDATE,CACHE_SI) -#define HIT_INVALIDATE_SD BUILD_CACHE_OP(HIT_INVALIDATE,CACHE_SD) - -#define CACHE_FILL_I BUILD_CACHE_OP(CACHE_FILL,CACHE_I) -#define HIT_WRITEBACK_INVALIDATE_D BUILD_CACHE_OP(HIT_WRITEBACK_INVALIDATE,CACHE_D) -#define HIT_WRITEBACK_INVALIDATE_SD BUILD_CACHE_OP(HIT_WRITEBACK_INVALIDATE,CACHE_SD) - -#define HIT_WRITEBACK_I BUILD_CACHE_OP(HIT_WRITEBACK,CACHE_I) -#define HIT_WRITEBACK_D BUILD_CACHE_OP(HIT_WRITEBACK,CACHE_D) -#define HIT_WRITEBACK_SD BUILD_CACHE_OP(HIT_WRITEBACK,CACHE_SD) - -#define HIT_SET_VIRTUAL_SI BUILD_CACHE_OP(HIT_SET_VIRTUAL,CACHE_SI) -#define HIT_SET_VIRTUAL_SD BUILD_CACHE_OP(HIT_SET_VIRTUAL,CACHE_SD) - -/*> EOF regs.S <*/ diff --git a/libgloss/mips/syscalls.c b/libgloss/mips/syscalls.c deleted file mode 100644 index 3ab5436..0000000 --- a/libgloss/mips/syscalls.c +++ /dev/null @@ -1,45 +0,0 @@ -#include <_ansi.h> -#include <sys/types.h> -#include <sys/stat.h> - -#include "regs.S" - -extern char _end[]; - -/* FIXME: This is not ideal, since we do a get_mem_info() call for - every sbrk() call. */ -char * -sbrk (nbytes) - int nbytes; -{ - static char *heap_ptr = _end; - static char *heap_start = _end; - char *base; - struct s_mem { - unsigned int size; - unsigned int icsize; - unsigned int dcsize; - } mem; - unsigned int avail = 0; - - /* The sizeof (s_mem.size) must be 4 bytes. The compiler should be - able to eliminate this check */ - if (sizeof (unsigned int) != 4) - return (char *)-1; - - get_mem_info(&mem); - /* NOTE: The value returned from the get_mem_info call is the amount - of memory, and not the address of the (last byte + 1) */ - - if (((size_t)heap_ptr >= heap_start) && ((size_t)heap_ptr < (heap_start + mem.size))) { - avail = (heap_start + mem.size) - (size_t)heap_ptr; - base = heap_ptr; - } /* else will fail since "nbytes" will be greater than zeroed "avail" value */ - - if ((nbytes > avail) || (heap_ptr + nbytes < _end)) - base = (char *)-1; - else - heap_ptr += nbytes; - - return base; -} diff --git a/libgloss/mips/test.c b/libgloss/mips/test.c deleted file mode 100644 index a993479..0000000 --- a/libgloss/mips/test.c +++ /dev/null @@ -1,13 +0,0 @@ -main() -{ - outbyte ('&'); - outbyte ('@'); - outbyte ('$'); - outbyte ('%'); - - /* whew, we made it */ - - print ("\r\nDone..."); - - return; -} diff --git a/libgloss/mips/vr4300.S b/libgloss/mips/vr4300.S deleted file mode 100644 index 2fc576e..0000000 --- a/libgloss/mips/vr4300.S +++ /dev/null @@ -1,341 +0,0 @@ -/* - * vr4300.S -- CPU specific support routines - * - * Copyright (c) 1995,1996 Cygnus Support - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -#ifndef __mips64 - .set mips3 -#endif -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#include "regs.S" - - .text - .align 2 - - # Taken from "R4300 Preliminary RISC Processor Specification - # Revision 2.0 January 1995" page 39: "The Count - # register... increments at a constant rate... at one-half the - # PClock speed." - # We can use this fact to provide small polled delays. - .globl __cpu_timer_poll - .ent __cpu_timer_poll -__cpu_timer_poll: - .set noreorder - # in: a0 = (unsigned int) number of PClock ticks to wait for - # out: void - - # The Vr4300 counter updates at half PClock, so divide by 2 to - # get counter delta: - bnezl a0, 1f # continue if delta non-zero - srl a0, a0, 1 # divide ticks by 2 {DELAY SLOT} - # perform a quick return to the caller: - j ra - nop # {DELAY SLOT} -1: - mfc0 v0, $9 # C0_COUNT: get current counter value - nop - nop - # We cannot just do the simple test, of adding our delta onto - # the current value (ignoring overflow) and then checking for - # equality. The counter is incrementing every two PClocks, - # which means the counter value can change between - # instructions, making it hard to sample at the exact value - # desired. - - # However, we do know that our entry delta value is less than - # half the number space (since we divide by 2 on entry). This - # means we can use a difference in signs to indicate timer - # overflow. - addu a0, v0, a0 # unsigned add (ignore overflow) - # We know have our end value (which will have been - # sign-extended to fill the 64bit register value). -2: - # get current counter value: - mfc0 v0, $9 # C0_COUNT - nop - nop - # This is an unsigned 32bit subtraction: - subu v0, a0, v0 # delta = (end - now) {DELAY SLOT} - bgtzl v0, 2b # looping back is most likely - nop - # We have now been delayed (in the foreground) for AT LEAST - # the required number of counter ticks. - j ra # return to caller - nop # {DELAY SLOT} - .set reorder - .end __cpu_timer_poll - - # Flush the processor caches to memory: - - .globl __cpu_flush - .ent __cpu_flush -__cpu_flush: - .set noreorder - # NOTE: The Vr4300 *CANNOT* have any secondary cache (bit 17 - # of the CONFIG registered is hard-wired to 1). We just - # provide code to flush the Data and Instruction caches. - - # Even though the Vr4300 has hard-wired cache and cache line - # sizes, we still interpret the relevant Config register - # bits. This allows this code to be used for other conforming - # MIPS architectures if desired. - - # Get the config register - mfc0 a0, C0_CONFIG - nop - nop - li a1, 1 # a useful constant - # - srl a2, a0, 9 # bits 11..9 for instruction cache size - andi a2, a2, 0x7 # 3bits of information - add a2, a2, 12 # get full power-of-2 value - sllv a2, a1, a2 # instruction cache size - # - srl a3, a0, 6 # bits 8..6 for data cache size - andi a3, a3, 0x7 # 3bits of information - add a3, a3, 12 # get full power-of-2 value - sllv a3, a1, a3 # data cache size - # - li a1, (1 << 5) # check IB (instruction cache line size) - and a1, a0, a1 # mask against the CONFIG register value - beqz a1, 1f # branch on result of delay slot operation - nop - li a1, 32 # non-zero, then 32bytes - j 2f # continue - nop -1: - li a1, 16 # 16bytes -2: - # - li t0, (1 << 4) # check DB (data cache line size) - and a0, a0, t0 # mask against the CONFIG register value - beqz a0, 3f # branch on result of delay slot operation - nop - li a0, 32 # non-zero, then 32bytes - j 4f # continue - nop -3: - li a0, 16 # 16bytes -4: - # - # a0 = data cache line size - # a1 = instruction cache line size - # a2 = instruction cache size - # a3 = data cache size - # - lui t0, ((K0BASE >> 16) & 0xFFFF) - ori t0, t0, (K0BASE & 0xFFFF) - addu t1, t0, a2 # end cache address - subu t2, a1, 1 # line size mask - not t2 # invert the mask - and t3, t0, t2 # get start address - addu t1, -1 - and t1, t2 # get end address -5: - cache INDEX_INVALIDATE_I,0(t3) - bne t3, t1, 5b - addu t3, a1 - # - addu t1, t0, a3 # end cache address - subu t2, a0, 1 # line size mask - not t2 # invert the mask - and t3, t0, t2 # get start address - addu t1, -1 - and t1, t2 # get end address -6: - cache INDEX_WRITEBACK_INVALIDATE_D,0(t3) - bne t3, t1, 6b - addu t3, a0 - # - j ra # return to the caller - nop - .set reorder - .end __cpu_flush - - # NOTE: This variable should *NOT* be addressed relative to - # the $gp register since this code is executed before $gp is - # initialised... hence we leave it in the text area. This will - # cause problems if this routine is ever ROMmed: - - .globl __buserr_cnt -__buserr_cnt: - .word 0 - .align 3 -__k1_save: - .word 0 - .word 0 - .align 2 - - .ent __buserr - .globl __buserr -__buserr: - .set noat - .set noreorder - # k0 and k1 available for use: - mfc0 k0,C0_CAUSE - nop - nop - andi k0,k0,0x7c - sub k0,k0,7 << 2 - beq k0,$0,__buserr_do - nop - # call the previous handler - la k0,__previous - jr k0 - nop - # -__buserr_do: - # TODO: check that the cause is indeed a bus error - # - if not then just jump to the previous handler - la k0,__k1_save - sd k1,0(k0) - # - la k1,__buserr_cnt - lw k0,0(k1) # increment counter - addu k0,1 - sw k0,0(k1) - # - la k0,__k1_save - ld k1,0(k0) - # - mfc0 k0,C0_EPC - nop - nop - addu k0,k0,4 # skip offending instruction - mtc0 k0,C0_EPC # update EPC - nop - nop - eret -# j k0 -# rfe - .set reorder - .set at - .end __buserr - -__exception_code: - .set noreorder - lui k0,%hi(__buserr) - daddiu k0,k0,%lo(__buserr) - jr k0 - nop - .set reorder -__exception_code_end: - - .data -__previous: - .space (__exception_code_end - __exception_code) - # This subtracting two addresses is working - # but is not garenteed to continue working. - # The assemble reserves the right to put these - # two labels into different frags, and then - # cant take their difference. - - .text - - .ent __default_buserr_handler - .globl __default_buserr_handler -__default_buserr_handler: - .set noreorder - # attach our simple bus error handler: - # in: void - # out: void - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,baseaddr - lui a0,0x8000 # delay slot - lui a0,0xbfc0 - daddiu a0,a0,0x0200 -baseaddr: - daddiu a0,a0,0x0180 - # a0 = base vector table address - la a1,__exception_code_end - la a2,__exception_code - subu a1,a1,a2 - la a3,__previous - # there must be a better way of doing this???? -copyloop: - lw v0,0(a0) - sw v0,0(a3) - lw v0,0(a2) - sw v0,0(a0) - daddiu a0,a0,4 - daddiu a2,a2,4 - daddiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,copyloop - nop - la a0,__buserr_cnt - sw $0,0(a0) - j ra - nop - .set reorder - .end __default_buserr_handler - - .ent __restore_buserr_handler - .globl __restore_buserr_handler -__restore_buserr_handler: - .set noreorder - # restore original (monitor) bus error handler - # in: void - # out: void - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,res_baseaddr - lui a0,0x8000 # delay slot - lui a0,0xbfc0 - daddiu a0,a0,0x0200 -res_baseaddr: - daddiu a0,a0,0x0180 - # a0 = base vector table address - la a1,__exception_code_end - la a3,__exception_code - subu a1,a1,a3 - la a3,__previous - # there must be a better way of doing this???? -res_copyloop: - lw v0,0(a3) - sw v0,0(a0) - daddiu a0,a0,4 - daddiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,res_copyloop - nop - j ra - nop - .set reorder - .end __restore_buserr_handler - - .ent __buserr_count - .globl __buserr_count -__buserr_count: - .set noreorder - # restore original (monitor) bus error handler - # in: void - # out: unsigned int __buserr_cnt - la v0,__buserr_cnt - lw v0,0(v0) - j ra - nop - .set reorder - .end __buserr_count - -/* EOF vr4300.S */ diff --git a/libgloss/mips/vr5xxx.S b/libgloss/mips/vr5xxx.S deleted file mode 100644 index 4d2b38b..0000000 --- a/libgloss/mips/vr5xxx.S +++ /dev/null @@ -1,457 +0,0 @@ -/* - * vr5xxx.S -- CPU specific support routines - * - * Copyright (c) 1999 Cygnus Solutions - * - * The authors hereby grant permission to use, copy, modify, distribute, - * and license this software and its documentation for any purpose, provided - * that existing copyright notices are retained in all copies and that this - * notice is included verbatim in any distributions. No written agreement, - * license, or royalty fee is required for any of the authorized uses. - * Modifications to this software may be copyrighted by their authors - * and need not follow the licensing terms described here, provided that - * the new terms are clearly indicated on the first page of each file where - * they apply. - */ - -/* This file cloned from vr4300.S by dlindsay@cygnus.com - * and recoded to suit Vr5432 and Vr5000. - * Should be no worse for Vr43{00,05,10}. - * Specifically, __cpu_flush() has been changed (a) to allow for the hardware - * difference (in set associativity) between the Vr5432 and Vr5000, - * and (b) to flush the optional secondary cache of the Vr5000. - */ - -/* Processor Revision Identifier (PRID) Register: Implementation Numbers */ -#define IMPL_VR5432 0x54 - -/* Cache Constants not determinable dynamically */ -#define VR5000_2NDLINE 32 /* secondary cache line size */ -#define VR5432_LINE 32 /* I,Dcache line sizes */ -#define VR5432_SIZE (16*1024) /* I,Dcache half-size */ - - -#ifndef __mips64 - .set mips3 -#endif -#ifdef __mips16 -/* This file contains 32 bit assembly code. */ - .set nomips16 -#endif - -#include "regs.S" - - .text - .align 2 - - # Taken from "R4300 Preliminary RISC Processor Specification - # Revision 2.0 January 1995" page 39: "The Count - # register... increments at a constant rate... at one-half the - # PClock speed." - # We can use this fact to provide small polled delays. - .globl __cpu_timer_poll - .ent __cpu_timer_poll -__cpu_timer_poll: - .set noreorder - # in: a0 = (unsigned int) number of PClock ticks to wait for - # out: void - - # The Vr4300 counter updates at half PClock, so divide by 2 to - # get counter delta: - bnezl a0, 1f # continue if delta non-zero - srl a0, a0, 1 # divide ticks by 2 {DELAY SLOT} - # perform a quick return to the caller: - j ra - nop # {DELAY SLOT} -1: - mfc0 v0, $9 # C0_COUNT: get current counter value - nop - nop - # We cannot just do the simple test, of adding our delta onto - # the current value (ignoring overflow) and then checking for - # equality. The counter is incrementing every two PClocks, - # which means the counter value can change between - # instructions, making it hard to sample at the exact value - # desired. - - # However, we do know that our entry delta value is less than - # half the number space (since we divide by 2 on entry). This - # means we can use a difference in signs to indicate timer - # overflow. - addu a0, v0, a0 # unsigned add (ignore overflow) - # We know have our end value (which will have been - # sign-extended to fill the 64bit register value). -2: - # get current counter value: - mfc0 v0, $9 # C0_COUNT - nop - nop - # This is an unsigned 32bit subtraction: - subu v0, a0, v0 # delta = (end - now) {DELAY SLOT} - bgtzl v0, 2b # looping back is most likely - nop - # We have now been delayed (in the foreground) for AT LEAST - # the required number of counter ticks. - j ra # return to caller - nop # {DELAY SLOT} - .set reorder - .end __cpu_timer_poll - - # Flush the processor caches to memory: - - .globl __cpu_flush - .ent __cpu_flush -__cpu_flush: - .set noreorder - # NOTE: The Vr4300 and Vr5432 *CANNOT* have any secondary cache. - # On those, SC (bit 17 of CONFIG register) is hard-wired to 1, - # except that email from Dennis_Han@el.nec.com says that old - # versions of the Vr5432 incorrectly hard-wired this bit to 0. - # The Vr5000 has an optional direct-mapped secondary cache, - # and the SC bit correctly indicates this. - - # So, for the 4300 and 5432 we want to just - # flush the primary Data and Instruction caches. - # For the 5000 it is desired to flush the secondary cache too. - # There is an operation difference worth noting. - # The 4300 and 5000 primary caches use VA bit 14 to choose cache set, - # whereas 5432 primary caches use VA bit 0. - - # This code interprets the relevant Config register bits as - # much as possible, except for the 5432. - # The code therefore has some portability. - # However, the associativity issues mean you should not just assume - # that this code works anywhere. Also, the secondary cache set - # size is hardwired, since the 5000 series does not define codes - # for variant sizes. - - # Note: this version of the code flushes D$ before I$. - # It is difficult to construct a case where that matters, - # but it cant hurt. - - mfc0 a0, C0_PRID # a0 = Processor Revision register - nop # dlindsay: unclear why the nops, but - nop # vr4300.S had such so I do too. - srl a2, a0, PR_IMP # want bits 8..15 - andi a2, a2, 0x255 # mask: now a2 = Implementation # field - li a1, IMPL_VR5432 - beq a1, a2, 8f # use Vr5432-specific flush algorithm - nop - - # Non-Vr5432 version of the code. - # (The distinctions being: CONFIG is truthful about secondary cache, - # and we act as if the primary Icache and Dcache are direct mapped.) - - mfc0 t0, C0_CONFIG # t0 = CONFIG register - nop - nop - li a1, 1 # a1=1, a useful constant - - srl a2, t0, CR_IC # want IC field of CONFIG - andi a2, a2, 0x7 # mask: now a2= code for Icache size - add a2, a2, 12 # +12 - sllv a2, a1, a2 # a2=primary instruction cache size in bytes - - srl a3, t0, CR_DC # DC field of CONFIG - andi a3, a3, 0x7 # mask: now a3= code for Dcache size - add a3, a3, 12 # +12 - sllv a3, a1, a3 # a3=primary data cache size in bytes - - li t2, (1 << CR_IB) # t2=mask over IB boolean - and t2, t2, t0 # test IB field of CONFIG register value - beqz t2, 1f # - li a1, 16 # 16 bytes (branch shadow: always loaded.) - li a1, 32 # non-zero, then 32bytes -1: - - li t2, (1 << CR_DB) # t2=mask over DB boolean - and t2, t2, t0 # test BD field of CONFIG register value - beqz t2, 2f # - li a0, 16 # 16bytes (branch shadow: always loaded.) - li a0, 32 # non-zero, then 32bytes -2: - lui t1, ((K0BASE >> 16) & 0xFFFF) - ori t1, t1, (K0BASE & 0xFFFF) - - # At this point, - # a0 = primary Dcache line size in bytes - # a1 = primary Icache line size in bytes - # a2 = primary Icache size in bytes - # a3 = primary Dcache size in bytes - # t0 = CONFIG value - # t1 = a round unmapped cached base address (we are in kernel mode) - # t2,t3 scratch - - addi t3, t1, 0 # t3=t1=start address for any cache - add t2, t3, a3 # t2=end adress+1 of Dcache - sub t2, t2, a0 # t2=address of last line in Dcache -3: - cache INDEX_WRITEBACK_INVALIDATE_D,0(t3) - bne t3, t2, 3b # - addu t3, a0 # (delay slot) increment by Dcache line size - - - # Now check CONFIG to see if there is a secondary cache - lui t2, (1 << (CR_SC-16)) # t2=mask over SC boolean - and t2, t2, t0 # test SC in CONFIG - bnez t2, 6f - - # There is a secondary cache. Find out its sizes. - - srl t3, t0, CR_SS # want SS field of CONFIG - andi t3, t3, 0x3 # mask: now t3= code for cache size. - beqz t3, 4f - lui a3, ((512*1024)>>16) # a3= 512K, code was 0 - addu t3, -1 # decrement code - beqz t3, 4f - lui a3, ((1024*1024)>>16) # a3= 1 M, code 1 - addu t3, -1 # decrement code - beqz t3, 4f - lui a3, ((2*1024*1024)>>16) # a3= 2 M, code 2 - j 6f # no secondary cache, code 3 - -4: # a3 = secondary cache size in bytes - li a0, VR5000_2NDLINE # no codes assigned for other than 32 - - # At this point, - # a0 = secondary cache line size in bytes - # a1 = primary Icache line size in bytes - # a2 = primary Icache size in bytes - # a3 = secondary cache size in bytes - # t1 = a round unmapped cached base address (we are in kernel mode) - # t2,t3 scratch - - addi t3, t1, 0 # t3=t1=start address for any cache - add t2, t3, a3 # t2=end address+1 of secondary cache - sub t2, t2, a0 # t2=address of last line in secondary cache -5: - cache INDEX_WRITEBACK_INVALIDATE_SD,0(t3) - bne t3, t2, 5b - addu t3, a0 # (delay slot) increment by line size - - -6: # Any optional secondary cache done. Now do I-cache and return. - - # At this point, - # a1 = primary Icache line size in bytes - # a2 = primary Icache size in bytes - # t1 = a round unmapped cached base address (we are in kernel mode) - # t2,t3 scratch - - add t2, t1, a2 # t2=end adress+1 of Icache - sub t2, t2, a1 # t2=address of last line in Icache -7: - cache INDEX_INVALIDATE_I,0(t1) - bne t1, t2, 7b - addu t1, a1 # (delay slot) increment by Icache line size - - j ra # return to the caller - nop - -8: - -# Vr5432 version of the cpu_flush code. -# (The distinctions being: CONFIG can not be trusted about secondary -# cache (which does not exist). The primary caches use Virtual Address Bit 0 -# to control set selection. - -# Code does not consult CONFIG about cache sizes: knows the hardwired sizes. -# Since both I and D have the same size and line size, uses a merged loop. - - li a0, VR5432_LINE - li a1, VR5432_SIZE - lui t1, ((K0BASE >> 16) & 0xFFFF) - ori t1, t1, (K0BASE & 0xFFFF) - - # a0 = cache line size in bytes - # a1 = 1/2 cache size in bytes - # t1 = a round unmapped cached base address (we are in kernel mode) - - add t2, t1, a1 # t2=end address+1 - sub t2, t2, a0 # t2=address of last line in Icache - -9: - cache INDEX_WRITEBACK_INVALIDATE_D,0(t1) # set 0 - cache INDEX_WRITEBACK_INVALIDATE_D,1(t1) # set 1 - cache INDEX_INVALIDATE_I,0(t1) # set 0 - cache INDEX_INVALIDATE_I,1(t1) # set 1 - bne t1, t2, 9b - addu t1, a0 - - j ra # return to the caller - nop - .set reorder - .end __cpu_flush - - # NOTE: This variable should *NOT* be addressed relative to - # the $gp register since this code is executed before $gp is - # initialised... hence we leave it in the text area. This will - # cause problems if this routine is ever ROMmed: - - .globl __buserr_cnt -__buserr_cnt: - .word 0 - .align 3 -__k1_save: - .word 0 - .word 0 - .align 2 - - .ent __buserr - .globl __buserr -__buserr: - .set noat - .set noreorder - # k0 and k1 available for use: - mfc0 k0,C0_CAUSE - nop - nop - andi k0,k0,0x7c - sub k0,k0,7 << 2 - beq k0,$0,__buserr_do - nop - # call the previous handler - la k0,__previous - jr k0 - nop - # -__buserr_do: - # TODO: check that the cause is indeed a bus error - # - if not then just jump to the previous handler - la k0,__k1_save - sd k1,0(k0) - # - la k1,__buserr_cnt - lw k0,0(k1) # increment counter - addu k0,1 - sw k0,0(k1) - # - la k0,__k1_save - ld k1,0(k0) - # - mfc0 k0,C0_EPC - nop - nop - addu k0,k0,4 # skip offending instruction - mtc0 k0,C0_EPC # update EPC - nop - nop - eret -# j k0 -# rfe - .set reorder - .set at - .end __buserr - -__exception_code: - .set noreorder - lui k0,%hi(__buserr) - daddiu k0,k0,%lo(__buserr) - jr k0 - nop - .set reorder -__exception_code_end: - - .data -__previous: - .space (__exception_code_end - __exception_code) - # This subtracting two addresses is working - # but is not garenteed to continue working. - # The assemble reserves the right to put these - # two labels into different frags, and then - # cant take their difference. - - .text - - .ent __default_buserr_handler - .globl __default_buserr_handler -__default_buserr_handler: - .set noreorder - # attach our simple bus error handler: - # in: void - # out: void - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,baseaddr - lui a0,0x8000 # delay slot - lui a0,0xbfc0 - daddiu a0,a0,0x0200 -baseaddr: - daddiu a0,a0,0x0180 - # a0 = base vector table address - la a1,__exception_code_end - la a2,__exception_code - subu a1,a1,a2 - la a3,__previous - # there must be a better way of doing this???? -copyloop: - lw v0,0(a0) - sw v0,0(a3) - lw v0,0(a2) - sw v0,0(a0) - daddiu a0,a0,4 - daddiu a2,a2,4 - daddiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,copyloop - nop - la a0,__buserr_cnt - sw $0,0(a0) - j ra - nop - .set reorder - .end __default_buserr_handler - - .ent __restore_buserr_handler - .globl __restore_buserr_handler -__restore_buserr_handler: - .set noreorder - # restore original (monitor) bus error handler - # in: void - # out: void - mfc0 a0,C0_SR - nop - li a1,SR_BEV - and a1,a1,a0 - beq a1,$0,res_baseaddr - lui a0,0x8000 # delay slot - lui a0,0xbfc0 - daddiu a0,a0,0x0200 -res_baseaddr: - daddiu a0,a0,0x0180 - # a0 = base vector table address - la a1,__exception_code_end - la a3,__exception_code - subu a1,a1,a3 - la a3,__previous - # there must be a better way of doing this???? -res_copyloop: - lw v0,0(a3) - sw v0,0(a0) - daddiu a0,a0,4 - daddiu a3,a3,4 - subu a1,a1,4 - bne a1,$0,res_copyloop - nop - j ra - nop - .set reorder - .end __restore_buserr_handler - - .ent __buserr_count - .globl __buserr_count -__buserr_count: - .set noreorder - # restore original (monitor) bus error handler - # in: void - # out: unsigned int __buserr_cnt - la v0,__buserr_cnt - lw v0,0(v0) - j ra - nop - .set reorder - .end __buserr_count - -/* EOF vr5xxx.S */ |