Eric Blake [Mon, 14 May 2007 19:42:47 +0000 (19:42 +0000)]
Reduce stack size of *printf.
* libc/stdio/vfprintf.c (_VFPRINTF_R): Fix use of decimal point
in %f. Avoid malloc when possible for %S.
(BUF): Improve stack locality by using smaller size.
(MAXEXPLEN, _PRINTF_FLOAT_TYPE): Define.
(exponent): Use smaller stack size.
Alan Modra [Fri, 11 May 2007 03:10:10 +0000 (03:10 +0000)]
include/elf/
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define.
bfd/
* reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
* elf-bfd.h (struct elf_backend_data): Change return type of
elf_backend_relocate_section to int.
* elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
R_SPU_PPU64.
(spu_elf_bfd_to_reloc_type): Convert new relocs.
(spu_elf_count_relocs): New function.
(elf_backend_count_relocs): Define.
(spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
R_SPU_PPU64 relocs.
* elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
returns 2.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-spu.c (md_pseudo_table): Add int, long, quad. Call
spu_cons for word.
(md_assemble): Tidy use of insn.flag.
(get_imm): Likewise. Handle uppercase input too.
(spu_cons): New function.
* config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs.
(TC_FORCE_RELOCATION): Don't resolve them either.
binutils/
* embedspu.sh (find_prog): Prefer prog in same dir as embedspu
over one found on the users path.
(main): Generate .reloc for each R_SPU_PPU* reloc.
Danny Smith [Mon, 7 May 2007 23:42:27 +0000 (23:42 +0000)]
* include/stdint.h (intptr_t): Protect with _INTPTR_T_DEFINED.
Condition on _WIN64.
(uintptr_t): Protect with _UINTPTR_T_DEFINED. Condition on _WIN64.
(INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX): Condition on _WIN64.
(PTRDIFF_MIN): Define as INTPTR_MIN.
(PTRDIFF_MAX): Define as INTPTR_MAX.
(SIG_ATOMIC_MIN): Define as INTPTR_MIN.
(SIG_ATOMIC_MAX): Define as INTPTR_MAX.
Kazu Hirata [Thu, 3 May 2007 19:45:26 +0000 (19:45 +0000)]
* libc/machine/m68k/Makefile.am (lib_a_SOURCES): Add memcpy.S
and memset.S.
* libc/machine/m68k/Makefile.in: Regenerate.
* libc/machine/m68k/memcpy.S: Use sub.l followed by dbra.
* libc/machine/m68k/memset.S: Likewise.
Alan Modra [Wed, 2 May 2007 13:44:36 +0000 (13:44 +0000)]
include/elf/
* internal.h (ELF_IS_SECTION_IN_SEGMENT): Check both file offset
and vma for appropriate sections.
bfd/
* elf.c (assign_file_positions_for_load_sections): Set sh_offset
here. Set sh_type to SHT_NOBITS if we won't be allocating
file space. Don't bump p_memsz for non-alloc sections. Adjust
section-in-segment check.
(assign_file_positions_for_non_load_sections): Don't set sh_offset
here for sections that have already been handled above.
Jeff Johnston [Tue, 1 May 2007 18:42:15 +0000 (18:42 +0000)]
2007-05-01 Cary R. <cygcary <at> yahoo.com>
* libm/math/e_pow.c: Fix to be consistent with glibc with regards
to treatment of NaN and +-inf arguments.
* libm/math/ef_pow.c: Ditto.
* libm/math/w_pow.c: Ditto.
* libm/math/wf_pow.c: Ditto.
* libm/math/w_acos.c: Fix domain errors to return NaN.
* libm/math/w_asin.c: Ditto.
* libm/math/wf_acos.c: Ditto.
* libm/math/wf_asin.c: Ditto.
* libm/math/w_log.c: Fix to return NaN for negative number inputs.
* libm/math/wf_log.c: Ditto.
* libm/math/wf_log10.c: Ditto.
* libm/math/w_log10.c: Ditto.
Jeff Johnston [Fri, 27 Apr 2007 22:10:47 +0000 (22:10 +0000)]
2007-04-27 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/m68k/Makefile.am: Temporarily remove
memcpy.S and memset.S until logic can be confirmed for
!(__mcoldfile__) case.
* libc/machine/m68k/Makefile.in: Regenerated.
Jeff Johnston [Thu, 26 Apr 2007 19:23:37 +0000 (19:23 +0000)]
2007-04-26 Patrick Mansfield <patmans@us.ibm.com>
* libc/include/ieeefp.h: use prefixed __ieeefp_ macros that can be
overridden via machine/ieeefp.h.
* libc/include/machine/ieeefp.h: Add SPU specific C99 and ieeefp
macros for isnan and related macros.
* libc/include/math.h: Allow C99 isfinite, isinf, and isnan to be
overridden via machine/ieeefp.h.
* libm/machine/spu/Makefile.am: Add new files.
* libm/machine/spu/Makefile.in: Autogenerate with new files.
* libm/machine/spu/sf_fpclassify.c: Add SPU specific __fpclassifyf.
* libm/machine/spu/sf_finite.c: Add SPU specific finitef.
* libm/machine/spu/sf_isinf.c: Add SPU specific isinff.
* libm/machine/spu/sf_isinff.c: Add SPU specific __isinff.
* libm/machine/spu/sf_isnan.c: Add SPU specific isnanf.
* libm/machine/spu/sf_isnanf.c: Add SPU specific __isnanf.
* libm/machine/spu/sf_nan.c: Add SPU specific nanf.
Jan Beulich [Thu, 26 Apr 2007 06:59:55 +0000 (06:59 +0000)]
Revert the value change of DT_ENCODING from 2003-01-17. Luckily (and
surprisingly) the value isn't really being used anywhere, henc no other
changes are needed.
include/elf/
2007-04-26 Jan Beulich <jbeulich@novell.com>
* common.h (DT_ENCODING): Correct value (back to spec mandated
value).
Jeff Johnston [Wed, 25 Apr 2007 20:45:39 +0000 (20:45 +0000)]
2007-04-25 Patrick Mansfield <patmans@us.ibm.com>
* libc/machine/spu/sys/errno.h: New file, so spu errno values match
ppu linux values. This file is a copy of the cris/sys/errno.h plus
a few changes (see spu errno.h comments).
Jeff Johnston [Mon, 23 Apr 2007 21:55:31 +0000 (21:55 +0000)]
2007-04-23 Brian Dessent <brian@dessent.net>
* libc/stdio/vfprintf.c (_vfprintf_r): When the alternate-form flag
has been specified with types 'f', 'F', 'g', or 'G', ensure the
trailing decimal is printed.
Jeff Johnston [Mon, 23 Apr 2007 19:46:08 +0000 (19:46 +0000)]
2007-04-23 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/arc/dummy.S: Dummy file to force .S.o suffix rule.
* libc/sys/arc/Makefile.am: Add dummy.S to EXTRA_lib_a_SOURCES
and set lib_a_CCASFLAGS so crto.o will use .S.o default suffix rule.
* libc/sys/arc/Makefile.in: Regenerated.
Jeff Johnston [Mon, 9 Apr 2007 16:03:26 +0000 (16:03 +0000)]
2007-04-09 Joel Schopp <jschopp@austin.ibm.com>
* libc/machine/spu/strxfrm.c: Fix strxfrm so we still copy data
even if the passed in length n is shorter than the source string.
This matches both the non-spu specific and the glibc strxfrm
behaviour.
* cygwin/external.cc (cygwin_internal): Implement CW_SET_DOS_FILE_WARNING.
* cygwin/include/sys/cygwin.h: Define CW_SET_DOS_FILE_WARNING.
* utils/mount.cc (main): Turn dos file warnings off since we know what we're
doing.
Dave Korn [Fri, 30 Mar 2007 00:49:56 +0000 (00:49 +0000)]
2007-03-30 Dave Korn <dave.korn@artimi.com>
* libc/include/stdio.h (_ELIDABLE_INLINE): New macro to conceal
conflicting inline semantics between C99 and GNU89.
(__sgetc_r): Replace static inline with _ELIDABLE_INLINE to be
compatible with -fkeep-inline-functions usage.
(__sputc_r): Likewise for consistency even though disabled.
Corinna Vinschen [Thu, 29 Mar 2007 16:37:36 +0000 (16:37 +0000)]
* cygheap.cc (cygheap_init): Fix formatting. Remove comment. Set
shared_prefix depending only on terminal service capability.
* dcrt0.cc (dll_crt0_1): Don't call set_cygwin_privileges here.
* fhandler_fifo.cc (fhandler_fifo::open): Create the mutex as global
object.
* posix_ipc.cc (ipc_mutex_init): Use cygheap->shared_prefix.
(ipc_cond_init): Ditto.
* sec_helper.cc (privilege_name): Make static. Use LookupPrivilegeName
directly to be independent of the state of cygheap.
(set_privilege): Take a LUID as parameter instead of an index value.
Only print debug output in case of failure.
(set_cygwin_privileges): Add comment. Use LookupPrivilegeValue to
get privilege LUIDs.
(init_global_security): Call set_cygwin_privileges here.
* security.h (privilege_name): Drop declaration.
(set_privilege): Declare according to above change.
(set_process_privilege): Call privilege_luid to get LUID.
(_push_thread_privilege): Ditto.
* shared.cc (open_shared): Add comment. On systems supporting the
SeCreateGlobalPrivilege, try to create/open global shared memory first.
Fall back to local shared memory if that fails.
* thread.cc (semaphore::semaphore): Use cygheap->shared_prefix.
* wincap.h (wincapc::has_create_global_privilege): New element.
* wincap.cc: Implement above element throughout.
Nick Clifton [Thu, 29 Mar 2007 06:25:44 +0000 (06:25 +0000)]
Reflect changes made to generic vfprintf.c:
* libc/machine/powerpc/vfprintf.c (__sprint): Rename to __sprint_r and add a "struct reent *" argument.
(__sbprintf): Rename to __sbprintf_r, add a "struct reent *" argument and call _VFPRINTF_R instead of VFPRINTF.
(_VFPRINTF_R): Add data pointer to call to cantwrite(). Fix uses of __sprint() and __sbprintf.
Jeff Johnston [Fri, 16 Mar 2007 21:16:09 +0000 (21:16 +0000)]
2007-03-16 Charles Wilson <cygwin@...>
* libc/argz/argz_insert.c: "before" pointer is
invalid after *argz realloc. Compute offset
between "before" and *argz, and use it after
reallocation instead.
Jeff Johnston [Thu, 15 Mar 2007 21:32:13 +0000 (21:32 +0000)]
2007-03-15 Jeff Johnston <jjohnstn@redhat.com>
* configure.in: Add new --enable-newlib-reent-small option.
* configure: Regenerated.
* acconfig.h: Add _WANT_REENT_SMALL.
* newlib.hin: Regenerated minus PACKAGE macros to add
_WANT_REENT_SMALL macro.
* libc/include/sys/config.h[_WANT_REENT_SMALL]: Set _REENT_SMALL
if not already set.
* libc/stdio/fflush.c[_REENT_SMALL]: Return immediately if
there is no buffer.
* libc/stdio/local.h[_REENT_SMALL]: Fix CHECK_INIT macro to
use reentrant pointer passed in when resetting the file
pointer to one of the std streams.