summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Allow sysconf to return CPU cache informationCorinna Vinschen2015-08-299-63/+559
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/sys/unistd.h (_SC_LEVEL*): Add cache-related variables as on Linux. * fhandler_proc.cc (format_proc_cpuinfo): Fetch cache information from new cache functions in sysconf.cc, get_cpu_cache_intel and get_cpu_cache_amd. * sysconf.cc (__nt_query_system): New local helper. (get_nproc_values): Utilize __nt_query_system on pre-Windows 7 systems. Use GetLogicalProcessorInformationEx otherwise to handle more than 64 CPUs. Only handle _SC_NPROCESSORS_CONF and _SC_NPROCESSORS_ONLN. (get_phys_pages): New helper to handle _SC_PHYS_PAGES. (cpuid2_cache_descriptor): New array to map Intel CPUID 2 descriptor values to cache type, cache size, associativity and linesize. (cpuid2_cache_desc_compar): Comparision function for bsearch over cpuid2_cache_descriptor. (get_cpu_cache_intel_cpuid2): New function to fetch cache info from Intel CPUID 2. (get_cpu_cache_intel_cpuid4): Ditto from Intel CPUID 4. (get_cpu_cache_intel): New function as CPU-specific entry point. (assoc): New array to map associativity values from AMD CPUID 0x80000006. (get_cpu_cache_amd): New function to fetch cache info from AMD CPUIDs 0x80000005 and 0x80000006. (get_cpu_cache): New function to fetch cache info. (sca): Call get_phys_pages if _SC_PHYS_PAGES is requested. Call get_cpu_cache for new _SC_* cache requests. (SC_MAX): Set to _SC_LEVEL4_CACHE_LINESIZE. (get_phys_pages(void)): Call get_phys_pages(int). * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. * new-features.xml (ov-new2.3): Document sysconf cache addition. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Implement POSIX_MADV_WILLNEED/POSIX_MADV_DONTNEED for newer OSesCorinna Vinschen2015-08-279-19/+147
| | | | | | | | | | | | | | | | | | | * autoload.cc (DiscardVirtualMemory): Import. (PrefetchVirtualMemory): Import. * mmap.cc (posix_madvise): Actually implement POSIX_MADV_WILLNEED utilizing PrefetchVirtualMemory and POSIX_MADV_DONTNEED utilizing DiscardVirtualMemory on systems supporting them. * wincap.h (wincaps::has_broken_prefetchvm): New element. * wincap.cc: Implement above element throughout. (wincapc::init): Make sure has_broken_prefetchvm is only true on W10 under WOW64. * include/cygwin/version.h (CYGWIN_VERSION_DLL_MAJOR): Bump to 2003. (CYGWIN_VERSION_API_MINOR): Reset to 0. * new-features.xml (ov-new2.3): New section, document posix_madvise POSIX_MADV_WILLNEED/POSIX_MADV_DONTNEED change. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* strlen-armv7.S: Fix preprocessor checkCorinna Vinschen2015-08-272-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hi! I've got the situation, that the function strlen() occurs twice in libc.a (building newlib for ARM-V7a and Size-Optimized). In newlib/libc/machine/arm/strlen.c there are the pre-processor stetements ... #if defined (__OPTIMIZE_SIZE__) || defined (PREFER_SIZE_OVER_SPEED) || \ (defined (__thumb__) && !defined (__thumb2__)) /*...*/ #else #if !(defined(_ISA_ARM_7) || defined(__ARM_ARCH_6T2__)) /*...*/ #endif and in newlib/libc/machine/arm/strlen-armv7.S the "exclude" begins with /* NOTE: This ifdef MUST match the ones in arm/strlen.c We fallback to the one in arm/strlen.c for size optimised or for older architectures. */ #if defined(_ISA_ARM_7) || defined(__ARM_ARCH_6T2__) && \ !(defined (__OPTIMIZE_SIZE__) || defined (PREFER_SIZE_OVER_SPEED) || \ (defined (__thumb__) && !defined (__thumb2__))) But this is not completely contrary to arm/strlen.c (see above)! To fix the logical statement in arm/strlen-armv7.S there are parentheses needed Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix for pri and scn formatsAndre Simoes Dias Vieira2015-08-273-127/+273
|
* fhandler_proc.cc: Only request group relation informationCorinna Vinschen2015-08-262-1/+6
| | | | | | | * fhandler_proc.cc (format_proc_cpuinfo): Only fetch group relations, we don't need anything else. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* winsup.h: Claim Windows 10 supportCorinna Vinschen2015-08-253-4/+11
| | | | | | | * winsup.h (_WIN32_WINNT): Set to 0x0a00 for Windows 10. (WINVER): Ditto. Remove outdated comment. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* autoload.cc: Drop using full paths for system DLLsCorinna Vinschen2015-08-252-11/+7
| | | | | | | | | | System DLLs are always first in the DLL search order so http://www.microsoft.com/technet/security/advisory/2269637.mspx doesn't apply for them. * autoload.cc (std_dll_init): Revert using full paths to system DLLs. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* autload.cc: Avoid clobbering return address in noload on i686Corinna Vinschen2015-08-252-2/+9
| | | | | | | | | | | | | | | This fixes a long-standing problem when GetProcAddress fails to load a function. The noload code calls SetLastError on i686 without saving the edx register. Starting with Windows 7, SetLastError apparently uses $edx and the register is set to 0x00000000 on return. So the subsequent `jmp *$edx' in noload supposed to return to the caller, actually jumps to address NULL, which results in a SEGV. * autoload.cc (noload): i686 only: Save and restore $edx when calling SetLastError to avoid clobbering return address stating with Windows 7. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* mmap.cc: Fix some commentsCorinna Vinschen2015-08-252-9/+10
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Updated copyright noticeAndre Vieira2015-08-251-1/+1
| | | | | | | | | | | | Update the ARM copyright notice to include 2015. 2015-08-20 Andre Vieira <andre.simoesdiasvieira@arm.com> * COPYING.NEWLIB: Updated ARM's copyright notice. From 913be92b12851bc6285b8ab77d6878fda613f77c Mon Sep 17 00:00:00 2001 From: Andre Simoes Dias Vieira <andsim01@arm.com> Date: Thu, 20 Aug 2015 14:16:42 +0100 Subject: [PATCH] Updated general Copyright notice
* Always declare "kill" in include/sys/signal.hJames Greenhalgh2015-08-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Hi, As I mentioned recently [1], newlib is providing a "kill" symbol to link against, without declaring "kill" in signal.h. This is confusing for the libgfortran build, which tries to link against kill (which succeeds), then tries to use it (which triggers -Werror=implicit-function-declaration). This patch implements my suggestion in that thread - making the declaration of 'kill' in libc/include/sys/signal.h unconditional. I've tested this by building a modified libgfortran on AArch64/ARM to see that the Werror goes away, and the libgfortran build succeeds. Is something like this OK for newlib? If so, can someone please commit it on my behalf, as I have no commit access here. Otherwise, what is your preferred direction for me to take this patch? Thanks, James
* Sigproc.cc: Fix copyright.newlib-snapshot-20150824Corinna Vinschen2015-08-241-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix hang stracing forking processes but not following childCorinna Vinschen2015-08-244-2/+37
| | | | | | | | * ntdll.h (PROCESSINFOCLASS): Define ProcessDebugFlags. * sigproc.cc (child_info::child_info): Only propagate _CI_STRACED to child if strace is actually tracing child processes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Bump Cygwin DLL minor number.Corinna Vinschen2015-08-242-1/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* oops - forgot to add PR number to ChangeLog entry.Nick Clifton2015-08-241-0/+1
|
* Add Lavasoft Web Companion to BLODA list.Jon TURNEY2015-08-212-0/+6
| | | | | | | | | 2015-08-18 Jon Turney <jon.turney@dronecode.org.uk> * faq-using.xml (faq.using.bloda): Add Lavasoft Web Companion to BLODA list. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* * msp430/crt0.S: Remove watchdog disabling code.Nick Clifton2015-08-202-2/+4
|
* Manuals failing to build on Ubuntu LTS 14.04cygwin-2_2_1-releaseJon TURNEY2015-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On 11/08/2015 11:08, Andre Vieira wrote: > On 10/08/15 14:38, Jon TURNEY wrote: >> On 07/08/2015 11:13, Andre Vieira wrote: >>> Building the manuals on Ubuntu LTS 14.04 (64-bit) using pdfTeX >>> 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) is failing with the >>> following error: >>> "Transcript written on libc.log. >>> /usr/bin/texi2dvi: pdfetex exited with bad status, quitting." >>> >>> libc.log complaints about the following: >>> >>> You can't use `@unskip' in vertical mode. >>> [...] >>> >>> This code has been around for a while, so it might have to do with a >>> change in pdfTex? So it seems this problem has been around for a while, and looks like it is due to a change in texi2dvi in texinfo 5.0 or late 4.x, see [1]. I guess it's not very noticeable since it only occurs when doing 'make dvi', which doesn't happen by default. Attached is a different and perhaps cleaner workaround to the one in that thread. [1] https://sourceware.org/ml/newlib/2013/msg00057.html From 4d386b5900b6c68e022004b447faa696be5ff8c7 Mon Sep 17 00:00:00 2001 From: Jon TURNEY <jon.turney@dronecode.org.uk> Date: Tue, 11 Aug 2015 14:46:39 +0100 Subject: [PATCH] Use '@sp 1' rather than '@*' to workaround a change in texi2dvi. Since about TexInfo 5.0, using '@*' immediately after a table causes a 'You can't use `@unskip' in vertical mode' error. See https://sourceware.org/ml/newlib/2013/msg00057.html Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Add MIN MAX macro to param header file.Andre Vieira2015-08-201-0/+3
| | | | | | | | | | | | newlib/ChangeLog: 2015-07-28 Andre Vieira <andre.simoesdiasvieira@arm.com> * libc/sys/arm/sys/param.h (MIN,MAX): Define. From 536ca7365d269f5e56679048e336d6969186d550 Mon Sep 17 00:00:00 2001 From: Andre Simoes Dias Vieira <andsim01@arm.com> Date: Tue, 28 Jul 2015 14:19:08 +0100 Subject: [PATCH] Added min max macros
* Use machine header file for endianness configuration.Andre Vieira2015-08-203-15/+41
| | | | | | | | | | | | | | | newlib/ChangeLog: 2015-07-28 Andre Vieira <andre.simoesdiasvieira@arm.com> * libc/sys/arm/sys/param.h (BIG_ENDIAN, LITTLE_ENDIAN): Moved to machine/endian.h. * libc/machine/arm/machine/param.h (BYTE_ORDER): Idem. * libc/machine/arm/machine/endian.h: New. From ca6efccda91bc6b620b7d96a466b0f1e2f02cfeb Mon Sep 17 00:00:00 2001 From: Andre Simoes Dias Vieira <andsim01@arm.com> Date: Tue, 28 Jul 2015 12:16:20 +0100 Subject: [PATCH 2/2] Move endianness configuration to machine/endian.h
* Use machine header file for param configuration.Andre Vieira2015-08-201-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On 31/07/15 10:34, Richard Earnshaw wrote: > On 31/07/15 10:28, Andre Vieira wrote: >> newlib/ChangeLog: >> 2015-07-28 Andre Vieira <andre.simoesdiasvieira@arm.com> >> >> * libc/sys/arm/sys/param.h: Include machine/param.h >> (HZ, NOFILE, PATHSIZE): Define. >> >> param_refactor_1.patch >> >> >> From abc2d5f3398721f6ca891b9581feaba58730b19c Mon Sep 17 00:00:00 2001 >> From: Andre Simoes Dias Vieira <andsim01@arm.com> >> Date: Tue, 28 Jul 2015 12:10:59 +0100 >> Subject: [PATCH 1/2] Moved param configuration to machine/param.h >> >> --- >> newlib/libc/sys/arm/sys/param.h | 12 ++++++++++-- >> 1 file changed, 10 insertions(+), 2 deletions(-) >> >> diff --git a/newlib/libc/sys/arm/sys/param.h b/newlib/libc/sys/arm/sys/param.h >> index adc066e9a8756e07edaaa8cadc79b5f05c996ac9..622c371972ab3c9dbb93ea5c51323a593e2a171a 100644 >> --- a/newlib/libc/sys/arm/sys/param.h >> +++ b/newlib/libc/sys/arm/sys/param.h >> @@ -3,9 +3,17 @@ >> #ifndef _SYS_PARAM_H >> # define _SYS_PARAM_H >> >> -# define HZ (100) >> -# define NOFILE (60) >> +#include <machine/param.h> >> + >> +#ifndef HZ >> +# define HZ (60) > > Why have you changed the value for HZ? It seems that, by convention, > ARM boards have always used 100. > > R. > >> +#endif >> +#ifndef NOFILE >> +# define NOFILE>(60) >> +#endif >> +#ifndef PATHSIZE >> # define PATHSIZE (1024) >> +#endif >> >> #define BIG_ENDIAN 4321 >> #define LITTLE_ENDIAN 1234 >> > Hi Richard, ARM's machine/param.h that is included in "#include <machine/param.h>", before the 'ifndef' already defines HZ to be 100. This file was already there, it was just not being used. I understand that this 'ifndef' might be confusing, though I decided to add it to mimic the behavior of the default sys/param.h. There is however an unrelated issue with this patch, a typo in the "#define NOFILE" that crept in there due to some copy pasting when splitting the patch. Here is a fixed version. BR, Andre newlib/ChangeLog: 2015-07-28 Andre Vieira <andre.simoesdiasvieira@arm.com> * libc/sys/arm/sys/param.h: Include machine/param.h (HZ, NOFILE, PATHSIZE): Define. From abc2d5f3398721f6ca891b9581feaba58730b19c Mon Sep 17 00:00:00 2001 From: Andre Simoes Dias Vieira <andsim01@arm.com> Date: Tue, 28 Jul 2015 12:10:59 +0100 Subject: [PATCH 1/2] Moved param configuration to machine/param.h
* Cygwin: Return port number from getservent in network byte orderCorinna Vinschen2015-08-183-2/+11
| | | | | | | * netdb.cc (parse_services_line): Convert port number to network byte order. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* exceptions.cc: Drop including ucontext.h.Corinna Vinschen2015-08-183-1/+7
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* sys/signal.h: include sys/ucontext.h on Cygwin per POSIX.1-2008Yaakov Selkowitz2015-08-181-0/+6
| | | | | | | * libc/include/sys/signal.h [__CYGWIN__]: include <sys/ucontext.h> if compiling for POSIX.1-2008. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* Don't call LsaLookupSids if we're not utilizing Windows account DBsCorinna Vinschen2015-08-173-19/+42
| | | | | | | | | * grp.cc (internal_getgrfull): Drop asking caches. Explain why. (internal_getgroups): In case we're not utilizing the Windows account DBs, don't call LsaLookupSids but iterate over the group SIDs in the token and call internal_getgrsid for each of them. Explain why. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Try harder to avoid LDAP access for RFC2307 mappingCorinna Vinschen2015-08-174-37/+55
| | | | | | | | | | | * fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): Rearrange to fall back to myself uid/gid in case we don't utilize Windows account DBs, just as prior to 1.7.34. * sec_helper.cc (cygpsid::get_id): Disable Samba user/group mapping per RFC2307 if we're not utilizing Windows account DBs. * security.cc (convert_samba_sd): Revert previous patch. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix /proc/cpuinfo topology info on newer AMD CPUsCorinna Vinschen2015-08-172-7/+29
| | | | | | | | * fhandler_proc.cc (format_proc_cpuinfo): Handle AMDs providing extended topology info in CPUID leaf 0x8000001e. Fix handling of AMD CPUs providing extended legacy core info in CPUID leaf 0x80000008. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* mkglobals_h: Handle CRLF earlier.Orgad Shaneh2015-08-172-1/+5
| | | | | | | When globals.cc has CRLF line endings, winsup.h is not removed, and compilation fails for duplicate definitions. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Support cpb and eff_freq_ro power mgmt flags in /proc/cpuinfoCorinna Vinschen2015-08-172-0/+9
| | | | | | | * fhandler_proc.cc (format_proc_cpuinfo): Print cpb and eff_freq_ro power management flags. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: Improve 2.2.1 release notesCorinna Vinschen2015-08-151-9/+4
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Cygwin: Try to fix potential data corruption in pipe writeCorinna Vinschen2015-08-154-1/+66
| | | | | | | | | | | | | | | * fhandler.cc (fhandler_base_overlapped::raw_write): When performing nonblocking I/O, copy user space data into own buffer. Add longish comment to explain why. * fhandler.h (fhandler_base_overlapped::atomic_write_buf): New member. (fhandler_base_overlapped::fhandler_base_overlapped): Initialize atomic_write_buf. (fhandler_base_overlapped::fhandler_base_overlapped): New destructor, free'ing atomic_write_buf. (fhandler_base_overlapped::copyto): Set atomic_write_buf to NULL in copied fhandler. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix copy/paste error in previous patchCorinna Vinschen2015-08-142-2/+7
| | | | | | | * security.cc (convert_samba_sd): Fix copy/paste error in previous patch. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Don't perform RFC2307 account mapping without account DBCorinna Vinschen2015-08-144-8/+21
| | | | | | | | | * fhandler_disk_file.cc (fhandler_base::fstat_by_nfs_ea): Only try to map user and group info per RFC2307 if account info is fetched from Windows account DB. (convert_samba_sd): Ditto. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Evaluate all group perms in ACL to emulate POSIX user permsCorinna Vinschen2015-08-142-0/+24
| | | | | | | * security,cc (get_attribute_from_acl): Merge all group perms into user perms if user is member of group. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Fix /proc/cpuinfo topology and cache size infoCorinna Vinschen2015-08-136-490/+618
| | | | | | | | | | | | | | | | * autoload.cc (GetLogicalProcessorInformationEx): Import. (SetThreadGroupAffinity): Import. * fhandler_proc.cc (add_size): New macro. (get_msb): New inline function. (mask_bits): Ditto. (format_proc_cpuinfo): Drop handling of old CPUs. Check if we're running on a OS version supporting porcessor groups. If so, use SetThreadGroupAffinity to set thread affinity. Improve cache info to include 3rd level cache on Intel CPUs. Improve multi core info. * wincap.h (wincaps::has_processor_groups): New element. * wincap.cc: Implement above element throughout. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* miscfuncs.cc: Fix comment preceeding x86_64 memset and friends.Corinna Vinschen2015-08-102-4/+9
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Revert to leaving $HOME aloneCorinna Vinschen2015-08-103-8/+20
| | | | | | * uinfo.cc (cygheap_user::ontherange): Revert previous patch. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* or1k: Typo fixesJeff Johnston2015-08-073-2/+7
| | | | | | | Wrong paranthesis and an incorrect symbol name are fixed. * or1k/boards/optimsoc.S: Fix symbol name * or1k/crt0.S: Remove paranthesis
* or1k: Allow exception nestingJeff Johnston2015-08-074-39/+149
| | | | | | | | | | | | | | | | | | | Allow exceptions to be nested, which is especially useful with urgent interrupts while processing an exception. The implementation counts up the nesting level with each call to an exception. In the outer exception (level 1), the exception stack is started. All nested exceptions just reserve the redzone (scratch memory that may be used by compiler) and exception context on the stack, but then process on the same scratch. Restriction: Impure pointers are shared among all exceptions. This may be solved by creating an impure data structure in the stack frame with each nested exception. * or1k/crt0.S: Add exception nesting * or1k/exceptions-asm.S: ditto * or1k/util.c: ditto
* or1k: Fix critical handling in malloc locksJeff Johnston2015-08-072-2/+8
| | | | | | | Only on first call to the recursive malloc lock the restore value of exception enable fields is stored. * libc/sys/or1k/mlock.c: Fix exception enable saving
* or1k: Make heap end globally visibleJeff Johnston2015-08-072-1/+5
| | | | | | Boards may change the initial value from _end to another value. * or1k/sbrk.c: Make heap end globally visible
* Improve FAQ answer on debugging CygwinJon TURNEY2015-08-052-4/+26
| | | | | | | | | | | Improve FAQ answer on debugging Cygwin to mention the cygwin-debuginfo package and the gdb command 'set cygwin-exceptions on'. 2015-08-03 Jon Turney <jon.turney@dronecode.org.uk> * faq-programming.xml: Improve debugging-cygwin answer. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* This is part of a larger fix for RL78 complex relocs - they need an absolute ↵Nick Clifton2015-08-043-0/+9
| | | | | | | symbol at address 0 that is not part of the *ABS* section. * rl78/rl78-sim.ld: Provide a value for __rl78_abs__. * rl78/rl78.ld: Likewise.
* Fix wscanf family positional parameter handling in %lc, %ls, %l[]Shoichi Sakon2015-08-032-7/+15
| | | | | | | | * libc/stdio/vfwscanf.c (__SVFWSCANF_R): Convert wrong usage of va_arg to GET_ARG in %lc, %ls nad %l[] cases. Fix unterminated string in %l[] case. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Bump Cygwin DLL minor number.Corinna Vinschen2015-08-032-1/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* strace: Handle ofile descriptor more carefully.cygwin-2_2_0-releaseCorinna Vinschen2015-08-032-6/+13
| | | | | | | | | Fix coverity CIDs 128250 - 128252 * strace.cc (main2): Don't call setvbuf on NULL descriptor. Explicitely fclose ofile. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Don't include stdio64 functions in reentrant syscalls menu when not bulding ↵Jon TURNEY2015-08-031-0/+8
| | | | | | | | | | stdio64. Fix documentation build since 6c2b1842 by not including stdio64 functions in the reent syscalls menu if the node itself isn't going to be included because it's under the STDIO64 flag. Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Fix typo in <sys/lock.h>Sebastian Huber2015-07-312-1/+6
| | | | | | | | | | | Sorry, there was a typo in <sys/lock.h> which leads to memory corruption since not enough space is reserved for the lock object. newlib/ChangeLog 2015-07-30 Sebastian Huber <sebastian.huber@embedded-brains.de> * libc/sys/rtems/include/sys/lock.h (__LOCK_INIT_RECURSIVE): Use proper type.
* [AArch64] Rewrite optimized memset.Wilco Dijkstra2015-07-302-191/+188
| | | | | | | | | | | This is an optimized memset for AArch64. Memset is split into 4 main cases: small sets of up to 16 bytes, medium of 16..96 bytes which are fully unrolled. Large memsets of more than 96 bytes align the destination and use an unrolled loop processing 64 bytes per iteration. Memsets of zero of more than 256 use the dc zva instruction, and there are faster versions for the common ZVA sizes 64 or 128. STP of Q registers is used to reduce codesize without loss of performance.
* Cygwin: Fix x86_64 memcpy/memset for n > 2GBCorinna Vinschen2015-07-293-19/+183
| | | | | | | | | | | | | | | | https://cygwin.com/ml/cygwin/2015-07/msg00344.html: RtlFillMemory and RtlCopyMemory only work for size values up to 2GB. Fix this problem by using NetBSD code for memset and memcpy. Add entry points for memmove, wmemset, wmemmove, wmemcpy. Thanks to Roman Petrovski <RPetrovski@illumina.com> for pointing this out. * miscfuncs.cc (memset): x86_64 only: Implement in assembler. (memmove,memcpy): x86_64 only: Ditto. (wmemmove,wmemcpy): x86_64 only: Ditto. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>