Commit Graph

281 Commits

Author SHA1 Message Date
Jeff Johnston
b821b6b557 2009-01-07 Ben Elliston <bje@au.ibm.com>
* Makefile.in (all): Add `+' to the command line so that the
        command is always treated as $(MAKE).
        * doc/Makefile.in (datarootdir): Define.
2009-01-07 22:10:29 +00:00
Jeff Johnston
d78a82f939 2008-12-17 Jon Beniston <jon@beniston.com>
* README: Add description of lm32 directory.
        * configure.in: Add lm32 target.
        * configure: Regenerated.
        * libnosys/configure.in: Add lm32 target.
        * libnosys/configure: Regenerated.
        * lm32: New directory.
        * lm32/aclocal.m4: New file.
        * lm32/Makefile.in: New file.
        * lm32/configure.in: New file.
        * lm32/configure: New file.
        * lm32/crt0.S: New file.
        * lm32/isatty.c: New file.
        * lm32/scall.S: New file.
        * lm32/sim.ld: New file.
2008-12-17 23:08:09 +00:00
Jeff Johnston
2549caeff1 2008-12-11 Ken Werner <ken.werner@de.ibm.com
* spu/crt0.S: Call __monstartup if profiling is enabled.
        * spu/Makefile.in: Add gcrt1.o gcrt2.o.
2008-12-11 12:46:36 +00:00
Adam Nemet
448832a927 * mips/idt32.ld: Set arch to mips:isa32r2 from mips:isa32. Update
comment.
2008-12-06 16:29:01 +00:00
Adam Nemet
8f2a0718d2 * mips/idt64.ld: Set arch to mips:isa64r2 from mips:isa64. Update
comment.
2008-12-05 19:51:33 +00:00
Jeff Johnston
01eb6cd6d9 2008-11-20 Ken Werner <ken.werner@de.ibm.com>
Patrick Mansfield  <patmans@us.ibm.com>
            Joel Schopp   <jschopp@austin.ibm.com>

        * spu/Makefile.in: Add new files.
        * spu/jsre.h: Add JSRE_MMAP, JSRE_MREMAP, JSRE_MSYNC and
        JSRE_MUNMAP opcodes.
        * spu/mmap_eaddr.c: New File.
        * spu/mremap_eaddr.c: Likewise.
        * spu/msync_eaddr.c: Likewise.
        * spu/munmap_eaddr.c: Likewise.
2008-11-20 20:12:34 +00:00
Jeff Johnston
28a65fe538 2008-11-17 Jeff Johnston <jjohnstn@redhat.com>
* m32r/Makefile.in: Add building m32r-stub.o from local copy instead
        of up and over in gdb.
        * m32r/m32r-stub.c: New file copied from gdb.
2008-11-17 21:58:28 +00:00
Jeff Johnston
455e95b5bd 2008-10-06 Bill Tompkins <bill+newlib@key-square.com>
* arm/crt0.S: Fix calling hardware_init_hook() or software_init_hook()
        under thumb and thumb2.
2008-10-06 20:55:19 +00:00
DJ Delorie
5025fc547d * m32c/varvects.S: New.
* m32c/varvects.h: New.
* m32c/sample.c: New.
* m32c/Makefile.in: Add m32cgloss library support.
* m32c/crt0.S: Tweaks to support interrupts by default.
* m32c/m32c.tmpl: Likewise.
2008-09-24 23:29:38 +00:00
Jeff Johnston
9ecc83a3f7 2008-09-10 Ken Werner <ken.werner@de.ibm.com>
* spu/dirfuncs.c: Avoid warnings.
        * spu/kill.c: Likewise.
2008-09-11 00:30:32 +00:00
Jeff Johnston
2c4143f401 2008-09-04 Ken Werner <ken.werner@de.ibm.com>
* spu/Makefile.in: Fix missing linux_syscalls.o.
        * spu/linux_syscalls.c: Remove extraneous "3D" sequences.
2008-09-04 20:26:18 +00:00
Jeff Johnston
84132c9d9f 2008-08-14 Jie Zhang <jie.zhang@analog.com>
* bfin/Makefile.in: (top_srcdir): Define.
        (mkinstalldirs): Define.
        (BOARD_SCRIPTS): Define.
        (BOARD_LDFLAGS): Define.
        (BOARD_BSP): Define.
        (BOARD_CRT0S): Define.
        (BOARD_OBJS): Define.
        (BOARD_TEST): Define.
        (BOARD_INSTALL): Define.
        (INCLUDES): Add -I$(srcdir)/include.
        (all): Add ${BOARD_CRT0S} and ${BOARD_BSP}.
        (.c.S): Remove target.
        (crt0.o): New target.
        (basiccrt.o): Likewise.
        (basiccrtb.o): Likewise.
        (basiccrts.o): Likewise.
        (basiccrt561.o, basiccrt561s.o, basiccrt561b.o): Likewise
        (clean mostlyclean): Remove ${BOARD_BSP}.
        (install): Depend on ${BOARD_INSTALL}.
        (install-sim): Reformat.
        (install-board): New target.
        * bfin/basiccrt.S: Remove useless __ADSPBF561_COREB__ in
        workaround code for 05000229.
        * bfin/syscalls.c (do_syscall): Use `EXCPT 0' instead of
        `RAISE 0' for syscall.
        * bfin/basiccrt.S: New file.
        * bfin/bf5*ld: New file.
        * bfin/bfin-common-mc.ld: New file.
        * bfin/bfin-common-sc.ld: New file.
        * bfin/include/blackfin.h: New file.
        * bfin/include/cdefBF5*.h: New file.
        * bfin/include/cdef_LPBlackfin.h: New file.
        * bfin/include/cdefblackfin.h: New file.
        * bfin/include/cplb.h: New file.
        * bfin/include/cplbtab.h: New file.
        * bfin/include/defBF5*.h: New files.
        * bfin/include/def_LPBlackfin.h: New files.
        * bfin/include/defblackfin.h: New file.
        * bfin/include/sys/_adi_platform.h: New file.
        * bfin/include/sys/anomaly_macros_rtl.h: New file.
        * bfin/include/sys/excause.h: New file.
        * bfin/include/sys/exception.h: New file.
        * bfin/include/sys/mc_typedef.h: New file.
        * bfin/include/sys/platform.h: New file.
        * bfin/include/sys/pll.h: New file.
        * bfin/include/sysreg.h: New file.
        * libnosys/configure.in (MISSING_SYSCALL_NAMES): Don't define
        for bfin.
        * libnosys/configure: Regenerate.
2008-08-14 22:00:47 +00:00
Jeff Johnston
7f48e8a8b3 2008-07-17 Ken Werner <ken.werner@de.ibm.com>
* spu/syscalls.c: Check and set the errno value.
2008-07-17 19:04:26 +00:00
Jeff Johnston
52ff05126a 2008-06-17 Ken Werner <ken.werner@de.ibm.com>
* spu/Makefile.in: Add new file.
        * spu/linux_syscalls.c: New file to add Linux syscall support.
2008-06-17 17:26:54 +00:00
Jeff Johnston
8ddb4e477e 2008-06-16 Corrin Meyer <cjmeyer@gmail.com>
* m68k/cf-crt1.c[__mcf_family_m1qe]: Don't access CACR.
2008-06-16 18:42:40 +00:00
Nick Clifton
cb1f8161c1 * libc/sys/sysnecv850/crt0.S (___dso_handle): Define (weak).
* iq2000/crt0.S (__dso_handle): Define (weak).
        * frv/crt0.S (__dso_handle): Define (weak).
        * mn10300/crt0.S (___dso_handle): Define (weak).
2008-05-21 07:44:32 +00:00
Jeff Johnston
6c31adf67e 2008-05-05 Ken Werner <ken.werner@de.ibm.com>
* spu/readlink.c: Align readlink implementation to POSIX.
2008-05-05 22:43:47 +00:00
Nick Clifton
026f9d290f * libc/machine/arm/setjmp.S: Fix thumb2 support.
* arm/crt0.S: Allow assembly under ARMv7 ISA.  Support for
            initializing stack pointers for interrupt modes is still pending.
2008-04-25 09:02:40 +00:00
Jeff Johnston
8fcb67cf0b 2008-04-14 Patrick Mansfield <patmans@us.ibm.com>
* spu/sbrk.c: Remove "extern int errno", use whatever is supplied
        by sys/errno.h.
2008-04-15 19:59:18 +00:00
DJ Delorie
6f810581fb [newlib]
* libm/machine/spu/configure: Regenerate with autoconf 2.61.
	* libc/sys/configure: Regenerate with autoconf 2.61.
	* libc/machine/configure: Regenerate with autoconf 2.61.
[libgloss]
	* hp74x/configure: Regenerate with autoconf 2.61.
	* fr30/configure: Regenerate with autoconf 2.61.
	* mips/configure: Regenerate with autoconf 2.61.
	* xstormy16/configure: Regenerate with autoconf 2.61.
	* rs6000/configure: Regenerate with autoconf 2.61.
	* d30v/configure: Regenerate with autoconf 2.61.
	* i386/configure: Regenerate with autoconf 2.61.
	* configure: Regenerate with autoconf 2.61.
	* wince/configure: Regenerate with autoconf 2.61.
	* pa/configure: Regenerate with autoconf 2.61.
	* m32r/configure: Regenerate with autoconf 2.61.
	* mn10200/configure: Regenerate with autoconf 2.61.
	* iq2000/configure: Regenerate with autoconf 2.61.
	* cris/configure: Regenerate with autoconf 2.61.
	* m68k/configure: Regenerate with autoconf 2.61.
	* spu/configure: Regenerate with autoconf 2.61.
	* m32c/configure: Regenerate with autoconf 2.61.
	* mn10300/configure: Regenerate with autoconf 2.61.
	* i960/configure: Regenerate with autoconf 2.61.
	* arm/configure: Regenerate with autoconf 2.61.
	* libnosys/configure: Regenerate with autoconf 2.61.
	* m68hc11/configure: Regenerate with autoconf 2.61.
	* bfin/configure: Regenerate with autoconf 2.61.
	* crx/configure: Regenerate with autoconf 2.61.
	* mt/configure: Regenerate with autoconf 2.61.
	* sparc/configure: Regenerate with autoconf 2.61.
	* sparc/libsys/configure: Regenerate with autoconf 2.61.
	* mcore/configure: Regenerate with autoconf 2.61.
	* mep/configure: Regenerate with autoconf 2.61.
	* frv/configure: Regenerate with autoconf 2.61.
	* doc/configure: Regenerate with autoconf 2.61.
2008-04-04 21:52:01 +00:00
DJ Delorie
978e84cf60 * m32c/exit.S (__exit): preserve both argument registers. 2008-01-11 02:21:44 +00:00
Jeff Johnston
277723722f 2008-01-03 Jeff Johnston <jjohnstn@redhat.com>
* arm/redboot-syscalls.c: Consistently supply _isatty if syscalls
        dir is used in newlib.
        * bfin/syscalls.c: Ditto.
        * cris/gensyscalls: Ditto.
        * fr30/syscalls.c: Ditto.
        * frv/isatty.c: Ditto.
        * iq2000/isatty.c: Ditto.
        * libnosys/isatty.c: Ditto.
        * m32r/isatty.c: Ditto.
        * mn10200/isatty.c: Ditto.
        * mn10300/isatty.c: Ditto.
        * xstormy16/isatty.c: New file with _isatty function.
2008-01-03 22:38:31 +00:00
Hans-Peter Nilsson
911cc0c9f6 * cris/Makefile.in (crt0.o): Add CFLAGS when compiling crt0.S. 2007-12-01 13:14:07 +00:00
Jeff Johnston
c8853ef701 2007-11-06 Dave Brolley <brolley@redhat.com>
* syscall.h (SYS_reconfig): New macro.
2007-11-06 23:07:06 +00:00
Jeff Johnston
799356ac2a 2007-10-11 Ulrich Weigand <uweigand@de.ibm.com>
* spu/crt0.S: Fix so element one of register one is correctly set
        when compiled with -mstdmain and -fstack-check.
2007-10-11 20:25:36 +00:00
Jeff Johnston
56398dd5d7 2007-10-02 Markus Deuling <deuling@de.ibm.com>
* spu/crt0.S: Initialize __ea_local_store (EA address of the LS)
          via register 6.
2007-10-02 18:59:58 +00:00
Jeff Johnston
bd6f74fda8 2007-10-01 Markus Deuling <deuling@de.ibm.com>
* spu/Makefile.in: add dependencies for crt files.
2007-10-01 18:42:51 +00:00
Jeff Johnston
eae493d8a8 2007-10-01 Patrick Mansfield <patmans@us.ibm.com>
* spu/sbrk.c: Use the current stack pointer value rather than the
        maximum available memory to determine the amount of heap space
        left. Without this change calling sbrk() can allocate space that
        is currently in use on the stack.
2007-10-01 18:22:50 +00:00
Ben Elliston
d2e4a94282 * spu/sched_yield.c: New file (missed on 2007-09-21). 2007-09-26 04:16:04 +00:00
Jeff Johnston
9594d5c342 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* spu/Makefile.in: Add new files.
        * spu/jsre.h: Add JSRE_PREAD, JSRE_PWRITE, JSRE_READV, and
        JSRE_WRITEV opcodes.
        * spu/pread.c: New file to add pread via assist call.
        * spu/pwrite.c: New file to add pwrite via assist call.
        * spu/readv.c: New file to add readv via assist call.
        * spu/writev.c: New file to add writev via assist call.
2007-09-21 21:14:41 +00:00
Jeff Johnston
e234ad1828 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_SCHED_YIELD, JSRE_UMASK, JSRE_UTIME, and
        JSRE_UTIMES.
        * spu/sched_yield.c: New file add sched_yield via assist call.
        * spu/umask.c: New file add umask via assist call.
        * spu/utime.c: New file add utime via assist call.
        * spu/utimes.c: New file add utimes via assist call.
        * spu/Makefile.in: Add new files.
2007-09-21 21:06:58 +00:00
Jeff Johnston
12df0c42e9 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_SHM_OPEN and JSRE_SHM_UNLINK opcodes.
        * spu/shm_open.c: New file to add shm_open via assist call.
        * spu/shm_unlink.c: New file to add shm_unlink via assist call.
        * spu/Makefile.in: Add shm_open.o and shm_unlink.o
2007-09-21 20:45:17 +00:00
Jeff Johnston
79978d2076 2007-09-21 Patrick Mansfield <patmans@us.ibm.com>
* spu/dirfuncs.c: New file, holds the opendir, closedir, readdir,
        rewinddir, seekdir and telldir implementations. These are
        grouped in one file so that we do not need a separate file for
        the struct dirent and DIR allocation code.
        * spu/jsre.h: Add JSRE_OPENDIR and other dir opcodes.
        * spu/Makefile.in: Add dirfuncs.o.
2007-09-21 20:40:52 +00:00
Jeff Johnston
a9a6f94229 2007-08-13 Carlos O'Donell <carlos@codesourcery.com>
* arm/crt0.S: Remove '.set' for __stack, hardware_init_hook,
	and software_init_hook.
2007-08-13 18:13:39 +00:00
Jeff Johnston
847e89f8e1 2007-08-10 Carlos O'Donell <carlos@codesourcery.com>
2007-07-12  Daniel Jacobowitz  <dan@codesourcery.com>

        * arm/syscalls.c (_stat): Use _close

        * arm/syscalls.c (struct poslog): Rename to...
        (struct fdent): ... this.
        (FILE_HANDLE_OFFSET): Remove.
        (findslot): Return a struct fdent* if fd is valid, otherwise return NULL.
        (newslot): New function.
        (remap_handle): Remove.
        (initialise_monitor_handles): Use stdout as fallback for stderr.
        (wrap): Rename to...
        (checkerror): ...  this.
        (_swiread): Use checkerror() for the return of SWI calls.  Correct the use of r0.
        (_read): Use findslot().  Return EBADF on bad handle.
        (_swilseek): Call findslot().  Check for valid whence.  Check for negative offset when using
        SEEK_CUR, and check for overflow.  Use checkerror().  Check *_Flen calls for errors.
        (_swiwrite): Correct the use of r0.
        (_write): Call findslot().
        (_swiopen): Call findslot().  Check for valid flags.  Use checkerror().  Call newslot().
        Handle O_TRUNC, and O_WRONLY.  Return index into openfiles[] for fd.
        (_swiclose): Correct the use of r0.
        (_close): Handle stderr == stdout case.  Only reclaim handle if _swiclose succeeded.
        (_getpid): Use __attribute__((unused)).
        (_sbrk): Fix formatting.
        (_swistat): New function.
        (_stat): Call _swistat().
        (_fstat): Call _swistat().
        (_unlink): Correct the use of r0.
        (isatty): Call finslot().  Correct the use of r0.
        (_system): Call checkerror().  Correct the use of r0.
        (_rename): Correct the use of r0.
2007-08-10 19:36:46 +00:00
Kevin Buettner
73d309ce3e * mep/fmax.ld, mep/gmap_default.ld, mep/min.ld, mep/simple.ld
(.gcc_except_table): Add pattern for .gcc_except_table.*.
2007-07-13 17:32:21 +00:00
Jeff Johnston
de229adb1a 2007-07-06 Jeff Johnston <jjohnstn@redhat.com>
* arm/syscalls.c (gettimeofday): Change to POSIX signature
        where second argument is passed as void *.
        * bfin/syscalls.c (gettimeofday): Ditto.
        * cris/gensyscalls (gettimeofday): Ditto.
        * cris/linunistd.h (gettimeofday): Ditto.
        * crx/time.c (gettimeofday): Ditto.
        * frv/sim-time.c (gettimeofday): Ditto.
        * i386/cygmon-salib.c (gettimeofday): Ditto.
        * libnosys/gettod.c (gettimeofday): Ditto.
        * m68k/io-gettimeofday.c (gettimeofday): Ditto.
        * sparc/cygmon-salib.c (gettimeofday): Ditto.
        * spu/gettimeofday.c (gettimeofday): Ditto.
2007-07-06 17:00:13 +00:00
Jeff Johnston
47484065df 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_MKSTEMP and JSRE_MKTEMP values.
        * spu/mkstemp.c: New file to add mkstemp support via assist call.
        * spu/mktemp.c: New file to add mktemp support via assist call.
        * spu/Makefile.in: Add mkstemp.o and mktemp.o
2007-06-20 21:53:01 +00:00
Jeff Johnston
d8988870fa 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add new JSRE opcodes.
        * spu/dup2.c: New file to add dup2 support via assist call.
        * spu/fdatasync.c: New file to add fdatasync support via assist call.
        * spu/fsync.c: New file to add fsync support via assist call.
        * spu/lockf.c: New file to add lockf support via assist call.
        * spu/sync.c: New file to add sync support via assist call.
        * spu/truncate.c: New file to add truncate support via assist call.
        * spu/Makefile.in: Add new files.
2007-06-20 21:50:53 +00:00
Jeff Johnston
7f8ec7f163 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: JSRE_LINK, JSRE_SYMLINK and JSRE_READLINK.
        * spu/link.c: New file to add link support via an assist call.
        * spu/readlink.c: New file to add readlink support via an assist call.
        * spu/symlink.c: New file to add symlink support via an assist call.
        * spu/Makefile.in: Add new files.
2007-06-20 21:44:54 +00:00
Jeff Johnston
72a14088c2 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_LSTAT.
        * spu/lstat.c: New file add lstat support via an assist call.
        * spu/conv_stat.c: New file, add common stat conversion code.
        * spu/fstat.c: Use __conv_stat.
        * spu/stat.c: Use __conv_stat.
        * spu/Makefile.in: Add conv_stat.o and lstat.o.
2007-06-20 21:41:33 +00:00
Jeff Johnston
2751142e3c 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add JSRE_GETCWD.
        * spu/getcwd.c: New file, implement getcwd with help from an
        assist call.
        * spu/Makefile.in: Add getcwd.
2007-06-20 21:38:55 +00:00
Jeff Johnston
38ebd2a6c0 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/jsre.h: Add defines for new assist calls.
        * spu/chdir.c: New file, support chdir via assist call.
        * spu/chmod.c: New file, support chmod via assist call.
        * spu/chown.c: New file, support chown via assist call.
        * spu/fchdir.c: New file, support fchdir via assist call.
        * spu/fchmod.c: New file, support fchmod via assist call.
        * spu/fchown.c: New file, support fchown via assist call.
        * spu/lchown.c: New file, support lchown via assist call.
        * spu/mkdir.c: New file, support mkdir via assist call.
        * spu/mknod.c: New file, support mknod via assist call.
        * spu/rmdir.c: New file, support rmdir via assist call.
        * spu/Makefile.in: Add new files.
2007-06-20 17:28:09 +00:00
Jeff Johnston
874e5ac68b 2007-06-20 Patrick Mansfield <patmans@us.ibm.com>
* spu/getpagesize.c: New file add getpagesize via an assist call.
        * spu/jsre.h: Add JSRE_GETPAGESIZE.
        * spu/Makefile.in: Add getpagesize.
2007-06-20 17:24:05 +00:00
Jeff Johnston
8905d0dcfd 2007-06-13 Patrick Mansfield <patmans@us.ibm.com>
* spu/Makefile.in: Add nanosleep.c.
        * spu/jsre.h: Add JSRE_NANOSLEEP.
        * spu/nanosleep.c: New file, supply nanosleep via an assist call.
2007-06-13 17:40:27 +00:00
Jeff Johnston
184dcf2bc3 2007-06-05 Patrick Mansfield <patman@us.ibm.com>
* spu/jsre.h: Remove the assist call structs and defines that are
        specific to one assist call from here.
        * spu/access.c: Move struct syscall_access_t to here.
        * spu/fstat.c: Move struct syscall_fstat_t to here.
        * spu/ftruncate.c: Move struct syscall_ftruncate_t to here.
        * spu/gettimeofday.c: Move struct syscall_gettimeofday_t to here.
        * spu/lseek.c: Move struct syscall_lseek_t and JSRE_SEEK defines to
        here.
        * spu/open.c: Move struct syscall_open_t and JSRE_O_ defines to here.
        * spu/read.c: Move struct syscall_read_t to here, and actually use
        it (it is the same as syscall_write_t).
        * spu/stat.c: Move struct syscall_stat_t to here.
        * spu/write.c: Move struct syscall_write_t to here.
        * spu/close.c: Pass the address of the first and only argument to
        __send_to_ppe rather than using an automatic variable and a
        special struct.
        * spu/dup.c: Ditto.
        * spu/unlink.c: Ditto.
2007-06-05 19:01:30 +00:00
Kazu Hirata
3cde47d015 * m68k/cf-crt1.C, m68k/cf.sc, m68k/fido.sc, m68k/fido-crt0.S:
Replace __INIT_SECTION__ and __FINI_SECTION__ with _init and
	_fini, respectively.
2007-05-30 18:33:56 +00:00
Jeff Johnston
a0050b64fc 2007-05-23 Patrick Mansfield <patmans@us.ibm.com>
* spu/syscalls.c: Change __send_to_ppe to return the result stored
        in stored in slot 0 of the data, rather than have each assisted
        call retrieve the value.
        * spu/jsre.h: Remove the now unused syscall_out_t.
        * spu/access.c: Use the __send_to_ppe result instead of the slot 0
        value, remove unused syscall_out_t variable.
        * spu/close.c: Ditto.
        * spu/dup.c: Ditto.
        * spu/fstat.c: Ditto.
        * spu/ftruncate.c: Ditto.
        * spu/gettimeofday.c: Ditto.
        * spu/lseek.c: Ditto.
        * spu/open.c: Ditto.
        * spu/read.c: Ditto.
        * spu/stat.c: Ditto.
        * spu/unlink.c: Ditto.
        * spu/write.c: Ditto.
2007-05-23 21:39:54 +00:00
Kazu Hirata
f8d7231006 * m68k/fido.sc (.data): Move .jcr to .text. Catch .got.plt
and .got.
2007-05-23 16:22:27 +00:00
Jeff Johnston
8f954ad3f8 2007-05-07 Patrick Mansfield <patmans@us.ibm.com>
* spu/open.c: Unconditionally set the "mode" to fix a bug where
        mode was not properly set.
2007-05-07 22:22:05 +00:00