]>
sourceware.org Git - newlib-cygwin.git/log
Yaakov Selkowitz [Wed, 2 Aug 2017 09:38:01 +0000 (04:38 -0500)]
cygwin: add explicit_bzero, elf.h changes to release
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Yaakov Selkowitz [Wed, 2 Aug 2017 06:15:31 +0000 (01:15 -0500)]
Add elf.h to newlib
This is copied from musl (MIT license). This is newer and more thorough
than that of FreeBSD currently shipped only on Cygwin.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Yaakov Selkowitz [Wed, 2 Aug 2017 06:09:49 +0000 (01:09 -0500)]
cygwin: Export explicit_bzero
This was added to newlib together with timingsafe_*cmp but never exported.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Corinna Vinschen [Tue, 1 Aug 2017 12:10:50 +0000 (14:10 +0200)]
cygwin: generate Alt-Numpad characters independent of NumLock state
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 31 Jul 2017 21:08:19 +0000 (23:08 +0200)]
cygwin: add console issues to release notes
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 31 Jul 2017 20:57:06 +0000 (22:57 +0200)]
cygwin: select: use UNICODE console functions
For historical reasons peek_console was calling the functions
PeekConsoleInputA and ReadConsoleInputA. However, these functions are
not working correctly under at least codepage 65001 (UTF-8) on systems
prior to Windows 10.
Use PeekConsoleInputW and ReadConsoleInputW instead, which work
correctly under all systems and all codepages.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 31 Jul 2017 09:44:02 +0000 (11:44 +0200)]
cygwin: console: Use memset to clear an array
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 31 Jul 2017 09:43:35 +0000 (11:43 +0200)]
cygwin: clear screen using wide char function
FillConsoleOutputCharacterA doesn't work correctly in codepage 65001
(UTF-8). Looks like the character conversion function from ascii char
to unicode char works incorrectly then. Use FillConsoleOutputCharacterW
instead.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Aditya Upadhyay [Fri, 28 Jul 2017 17:29:40 +0000 (22:59 +0530)]
Importing catanl long double complex method from NetBSD.
Aditya Upadhyay [Fri, 28 Jul 2017 17:34:34 +0000 (23:04 +0530)]
Fixing HUGE_VALF to HUGE_VALL.
Sebastian Huber [Fri, 28 Jul 2017 10:02:43 +0000 (12:02 +0200)]
stdio: Fix make rule override
The Makefile.am contained two rules for the vfwscanf object.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Corinna Vinschen [Fri, 28 Jul 2017 10:44:45 +0000 (12:44 +0200)]
newlib: regenerate stdlib/Makefile.in
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Aditya Upadhyay [Tue, 25 Jul 2017 19:30:26 +0000 (01:00 +0530)]
Importing imaxdiv inttypes method from FreeBSD.
Aditya Upadhyay [Tue, 25 Jul 2017 19:29:48 +0000 (00:59 +0530)]
Importing imaxabs inttypes method from FreeBSD.
Corinna Vinschen [Wed, 26 Jul 2017 09:49:58 +0000 (11:49 +0200)]
cygwin: Set __STDC_ISO_10646__ to Unicode 5.2 value
Now that XP is not supported anymore we can freely do that.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 24 Jul 2017 21:04:34 +0000 (23:04 +0200)]
cygwin: add release notes for reparse point patches
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 24 Jul 2017 15:33:20 +0000 (17:33 +0200)]
cygwin: unify reparse point checking code into single function
So far we had two functions checking the content of a reparse point,
readdir_check_reparse_point in fhandler_disk_file.cc for the sake of
readdir, and symlink_info::check_reparse_point for the sake of
generic path checking.
* Rename check_reparse_point_target helper to check_reparse_point_string
and convert to static function.
* Create new check_reparse_point_target helper containing the core
reparse point checking code
* Just call check_reparse_point_target from readdir_check_reparse_point
and symlink_info::check_reparse_point and only perform the unique
task in those functions.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 24 Jul 2017 15:32:20 +0000 (17:32 +0200)]
cygwin: fix formatting in check_reparse_point_target
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Mon, 24 Jul 2017 15:26:17 +0000 (17:26 +0200)]
cygwin: Fix resource leak in readdir reparse point handling
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Richard Earnshaw [Fri, 21 Jul 2017 10:22:25 +0000 (11:22 +0100)]
[arm] Fix strcpy for unified syntax on ARMv4t thumb.
ARMv4t does not support mov between two low registers. Now we use
unified syntax mov instructions need converting to movs.
Tamar Christina [Thu, 20 Jul 2017 12:28:40 +0000 (13:28 +0100)]
Previous patch to support nosys.specs accidentally broke validation specs because ARM_RDI_MONITOR was never passed to the build rule for crt0.
This fixed the compile for nosys and validation specs
but nosys won't run because of existing limitations to
aarch64's syscalls.c, it requires semihosting to get
commandline arguments and heap info without having a
fallback method as ARM does.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Jozef Lawrynowicz [Mon, 10 Jul 2017 17:19:00 +0000 (17:19 +0000)]
MSP430: Define __BUFSIZ__ as 256 to prevent default of 1024 being used
Ian Tessier via newlib [Wed, 19 Jul 2017 21:02:43 +0000 (14:02 -0700)]
arm: Update strcpy.c to use UAL syntax.
With this change the arm platform can now be fully compiled with Clang.
Tested by comparing the output with GCC 4.8.2, and Clang 4.0, using a
variety of arches, big/little endianness, and arm/thumb mode to verify
the generated assembly output matches between GCC vs Clang with UAL, and
also GCC with UAL vs GCC with non-UAL, for all preprocessor code blocks.
The only difference found is an extra nop at the end of the function
when compiled with GCC using armv7-a/thumb/little-endian/-O2 compared to
Clang. The nop is not emitted when compiled in big-endian mode.
Corinna Vinschen [Wed, 19 Jul 2017 08:41:36 +0000 (10:41 +0200)]
cygwin: add fflush fix to release notes
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Wed, 19 Jul 2017 08:38:15 +0000 (10:38 +0200)]
cygwin: Bump DLL version to 2.8.3
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Wed, 19 Jul 2017 08:30:47 +0000 (10:30 +0200)]
cygwin: Use errno instead of _impure_ptr->_errno
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Wed, 19 Jul 2017 08:28:39 +0000 (10:28 +0200)]
Revert "errno: Stop using _impure_ptr->_errno completely"
This reverts commit
44b1746a41921533d27aca414a9188314cb725b6 .
Bad idea. _impure_ptr->_errno is used by newlib
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Tamar Christina [Mon, 17 Jul 2017 07:46:45 +0000 (08:46 +0100)]
Support building in a different directory than the default output directory by preserving DESTDIR value in recursive calls.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Tamar Christina [Thu, 13 Jul 2017 10:52:42 +0000 (10:52 +0000)]
Fix link when nosys.specs is used to link
This patch fixes the issue where nosys.specs is used to link.
e.g. The use of crt0 without any support for semihosting requested.
The AArch64 crt0 was missing an #ifdef for the initialise_monitor_handles
which was causing the link to fail. Sorry for missing this before.
Corinna Vinschen [Wed, 12 Jul 2017 08:49:10 +0000 (10:49 +0200)]
cygwin: 2.8.2: add missing release message text
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Yaakov Selkowitz [Wed, 12 Jul 2017 08:24:50 +0000 (03:24 -0500)]
cygwin: document signal.h fixes
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Sebastian Huber [Wed, 12 Jul 2017 06:03:29 +0000 (08:03 +0200)]
Synchronize RTEMS <sys/bitset.h> with FreeBSD
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Corinna Vinschen [Tue, 11 Jul 2017 08:31:44 +0000 (10:31 +0200)]
cygwin: export fls, flsl, flsll
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Yaakov Selkowitz [Fri, 7 Jul 2017 22:33:59 +0000 (17:33 -0500)]
Cygwin: fix guard on struct siginfo_t
Add line breaks to make it clearer that the struct packing applies to more
than one struct.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Sebastian Huber [Fri, 7 Jul 2017 05:11:47 +0000 (07:11 +0200)]
Add myself to OS Port Maintainers (RTEMS)
Sebastian Huber [Fri, 7 Jul 2017 05:07:19 +0000 (07:07 +0200)]
Synchronize RTEMS <sys/bitset.h> with FreeBSD
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
David Macek [Fri, 7 Jul 2017 08:47:02 +0000 (10:47 +0200)]
Rename __in and __out in headers to avoid collision with Windows APIs
* string.h: Local variables in expansion of strdupa and strndupa
* sys/wait.h: Fields in anonymous union in expansion of __wait_status_to_int
Brian Inglis [Thu, 6 Jul 2017 09:35:34 +0000 (03:35 -0600)]
fix URL shortcuts launch with cygstart, create shortcuts directly in SM/Programs/Cygwin
Tamar Christina [Thu, 6 Jul 2017 09:33:31 +0000 (10:33 +0100)]
Replace the perl character classes with POSIX ones to fix the build when sed is a BSD sed instead of GNU.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Brian Inglis [Wed, 5 Jul 2017 18:28:54 +0000 (12:28 -0600)]
fix cygwin-doc postinstall/preremove no SMPrograms/Cygwin dir
Tamar Christina [Wed, 5 Jul 2017 12:04:59 +0000 (13:04 +0100)]
Add support for Semihosting v2 support for AArch64 in libgloss.
Semihosting v2 changes are documented here:
https://developer.arm.com/docs/100863/latest/
The biggest change is the addition of an extensions mechanism
to add more extensions in the future.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Tamar Christina [Wed, 5 Jul 2017 12:04:07 +0000 (13:04 +0100)]
Add support for Semihosting v2 support for ARM in libgloss.
Semihosting v2 changes are documented here:
https://developer.arm.com/docs/100863/latest/
The biggest change is the addition of an extensions mechanism
to add more extensions in the future.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Tamar Christina [Wed, 5 Jul 2017 12:02:30 +0000 (13:02 +0100)]
Add the needed build system changes in order to compile and create the new libraries for Semihosting v2 for ARM.
This uses the new recursive build target in multi-build.in
The new spec files are:
For AArch32/ARM (m for mixed mode):
- rdimon-v2m.specs
- aprofile-validation-v2m.specs
- aprofile-ve-v2m.specs
These spec files will be using the new libraries generated
by multi-build.in.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Tamar Christina [Wed, 5 Jul 2017 12:00:23 +0000 (13:00 +0100)]
Adds the needed build system changes in order to compile and create the new libraries for Semihosting v2.
This uses the new recursive build target in multi-build.in
For AArch64 no new spec files are needed but the makefiles
are modified to keep them in sync with the ARM ones.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Tamar Christina [Wed, 5 Jul 2017 11:54:52 +0000 (12:54 +0100)]
Create a recursive make target that is modeled after the existing multilib makefile config-ml.in which can be used to build the same files within a target multiple ways.
e.g. from the same source file produce multiple libs by varying the
options passed to the compiler.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
Aditya Upadhyay [Wed, 5 Jul 2017 08:58:36 +0000 (14:28 +0530)]
Fixed warnings for some long double complex methods
Sebastian Huber [Tue, 4 Jul 2017 10:56:22 +0000 (12:56 +0200)]
Add ffsl(), ffsll(), fls(), flsl(), flsll()
Use compiler builtin for ffs(). Remove duplicate implementation from
Cygwin.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Tue, 4 Jul 2017 09:49:58 +0000 (11:49 +0200)]
Synchronize <strings.h> with latest FreeBSD
Include <strings.h> in <string.h> if __BSD_VISIBLE like on FreeBSD.
Remove redundant declarations from <string.h>. Make ffsl(), ffsll(),
strncasecmp(), strcasecmp_l(), and strncasecmp_l() visible via
__BSD_VISIBLE instead of __GNU_VISIBLE. Add fls(), flsl(), and flsll()
to <strings.h> if __BSD_VISIBLE.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Tue, 4 Jul 2017 12:25:28 +0000 (14:25 +0200)]
Implement bzero() via memset()
Use memset() to implement bzero() to profit from machine-specific
memset() optimizations.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Yaakov Selkowitz [Tue, 4 Jul 2017 23:10:02 +0000 (18:10 -0500)]
Cygwin: fix signal.h with _POSIX_C_SOURCE=1
struct sigaction is POSIX.1-1990 but siginfo_t, which is used by its
sa_sigaction member, is POSIX.1b-1993. Therefore it needs to be guarded
as well, and as part of a union, the struct size is protected.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Corinna Vinschen [Tue, 4 Jul 2017 13:13:31 +0000 (15:13 +0200)]
add scandirat patch to release notes
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Tue, 4 Jul 2017 13:11:06 +0000 (15:11 +0200)]
cygwin: scandirat: fix path given to scandir
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Tue, 4 Jul 2017 13:10:27 +0000 (15:10 +0200)]
Bump DLL minor version
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Yaakov Selkowitz [Thu, 29 Jun 2017 18:45:46 +0000 (13:45 -0500)]
Feature test macros overhaul: unistd.h, part 2
This fixes commit
f70aad3de4d845f8b720010a2f8817db842d81e8 as well as some
other functions which were never properly guarded.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Sebastian Huber [Thu, 29 Jun 2017 05:28:08 +0000 (07:28 +0200)]
Add --enable-newlib-global-stdio-streams
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Thu, 29 Jun 2017 06:17:04 +0000 (08:17 +0200)]
Enable _REENT_GLOBAL_STDIO_STREAMS for RTEMS
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Thu, 22 Jun 2017 07:22:47 +0000 (09:22 +0200)]
Introduce _REENT_GLOBAL_STDIO_STREAMS
In Newlib, the stdio streams are defined to thread-specific pointers
_reent::_stdin, _reent::_stdout and _reent::_stderr. In case
_REENT_SMALL is not defined, then these pointers are initialized via
_REENT_INIT_PTR() or _REENT_INIT_PTR_ZEROED() to thread-specific FILE
objects provided via _reent::__sf[3]. There are two problems with this
(at least in case of RTEMS).
(1) The thread-specific FILE objects are closed by _reclaim_reent().
This leads to problems with language run-time libraries that provide
wrappers to the C/POSIX stdio streams (e.g. C++ and Ada), since they
use the thread-specific FILE objects of the initialization thread. In
case the initialization thread is deleted, then they use freed memory.
(2) Since thread-specific FILE objects are used with a common output
device via file descriptors 0, 1 and 2, the locking at FILE object level
cannot ensure atomicity of the output, e.g. a call to printf().
Introduce a new Newlib configuration option _REENT_GLOBAL_STDIO_STREAMS
to enable the use of global stdio FILE objects.
As a side-effect this reduces the size of struct _reent by more than
50%.
The _REENT_GLOBAL_STDIO_STREAMS should not be used without
_STDIO_CLOSE_PER_REENT_STD_STREAMS.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Fri, 23 Jun 2017 07:48:58 +0000 (09:48 +0200)]
Add stdin_init(), stdout_init() and stderr_init()
This simplifies further changes in this area.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Sebastian Huber [Fri, 23 Jun 2017 07:22:37 +0000 (09:22 +0200)]
Remove superfluous parameter from std()
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Wilco Dijkstra [Thu, 29 Jun 2017 14:32:09 +0000 (14:32 +0000)]
Optimized memcmp
This is an optimized memcmp for AArch64. This is a complete rewrite
using a different algorithm. The previous version split into cases
where both inputs were aligned, the inputs were mutually aligned and
unaligned using a byte loop. The new version combines all these cases,
while small inputs of less than 8 bytes are handled separately.
This allows the main code to be sped up using unaligned loads since
there are now at least 8 bytes to be compared. After the first 8 bytes,
align the first input. This ensures each iteration does at most one
unaligned access and mutually aligned inputs behave as aligned.
After the main loop, process the last 8 bytes using unaligned accesses.
This improves performance of (mutually) aligned cases by 25% and
unaligned by >500% (yes >6 times faster) on large inputs.
ChangeLog:
2017-06-28 Wilco Dijkstra <wdijkstr@arm.com>
* newlib/libc/machine/aarch64/memcmp.S (memcmp):
Rewrite of optimized memcmp.
GLIBC benchtests/bench-memcmp.c performance comparison for Cortex-A53:
Length 1, alignment 1/ 1: 153%
Length 1, alignment 1/ 1: 119%
Length 1, alignment 1/ 1: 154%
Length 2, alignment 2/ 2: 121%
Length 2, alignment 2/ 2: 140%
Length 2, alignment 2/ 2: 121%
Length 3, alignment 3/ 3: 105%
Length 3, alignment 3/ 3: 105%
Length 3, alignment 3/ 3: 105%
Length 4, alignment 4/ 4: 155%
Length 4, alignment 4/ 4: 154%
Length 4, alignment 4/ 4: 161%
Length 5, alignment 5/ 5: 173%
Length 5, alignment 5/ 5: 173%
Length 5, alignment 5/ 5: 173%
Length 6, alignment 6/ 6: 145%
Length 6, alignment 6/ 6: 145%
Length 6, alignment 6/ 6: 145%
Length 7, alignment 7/ 7: 125%
Length 7, alignment 7/ 7: 125%
Length 7, alignment 7/ 7: 125%
Length 8, alignment 8/ 8: 111%
Length 8, alignment 8/ 8: 130%
Length 8, alignment 8/ 8: 124%
Length 9, alignment 9/ 9: 160%
Length 9, alignment 9/ 9: 160%
Length 9, alignment 9/ 9: 150%
Length 10, alignment 10/10: 170%
Length 10, alignment 10/10: 137%
Length 10, alignment 10/10: 150%
Length 11, alignment 11/11: 160%
Length 11, alignment 11/11: 160%
Length 11, alignment 11/11: 160%
Length 12, alignment 12/12: 146%
Length 12, alignment 12/12: 168%
Length 12, alignment 12/12: 156%
Length 13, alignment 13/13: 167%
Length 13, alignment 13/13: 167%
Length 13, alignment 13/13: 173%
Length 14, alignment 14/14: 167%
Length 14, alignment 14/14: 168%
Length 14, alignment 14/14: 168%
Length 15, alignment 15/15: 168%
Length 15, alignment 15/15: 173%
Length 15, alignment 15/15: 173%
Length 1, alignment 0/ 0: 134%
Length 1, alignment 0/ 0: 127%
Length 1, alignment 0/ 0: 119%
Length 2, alignment 0/ 0: 94%
Length 2, alignment 0/ 0: 94%
Length 2, alignment 0/ 0: 106%
Length 3, alignment 0/ 0: 82%
Length 3, alignment 0/ 0: 87%
Length 3, alignment 0/ 0: 82%
Length 4, alignment 0/ 0: 115%
Length 4, alignment 0/ 0: 115%
Length 4, alignment 0/ 0: 122%
Length 5, alignment 0/ 0: 127%
Length 5, alignment 0/ 0: 119%
Length 5, alignment 0/ 0: 127%
Length 6, alignment 0/ 0: 103%
Length 6, alignment 0/ 0: 100%
Length 6, alignment 0/ 0: 100%
Length 7, alignment 0/ 0: 82%
Length 7, alignment 0/ 0: 91%
Length 7, alignment 0/ 0: 87%
Length 8, alignment 0/ 0: 111%
Length 8, alignment 0/ 0: 124%
Length 8, alignment 0/ 0: 124%
Length 9, alignment 0/ 0: 136%
Length 9, alignment 0/ 0: 136%
Length 9, alignment 0/ 0: 136%
Length 10, alignment 0/ 0: 136%
Length 10, alignment 0/ 0: 135%
Length 10, alignment 0/ 0: 136%
Length 11, alignment 0/ 0: 136%
Length 11, alignment 0/ 0: 136%
Length 11, alignment 0/ 0: 135%
Length 12, alignment 0/ 0: 136%
Length 12, alignment 0/ 0: 136%
Length 12, alignment 0/ 0: 136%
Length 13, alignment 0/ 0: 135%
Length 13, alignment 0/ 0: 136%
Length 13, alignment 0/ 0: 136%
Length 14, alignment 0/ 0: 136%
Length 14, alignment 0/ 0: 136%
Length 14, alignment 0/ 0: 136%
Length 15, alignment 0/ 0: 136%
Length 15, alignment 0/ 0: 136%
Length 15, alignment 0/ 0: 136%
Length 4, alignment 0/ 0: 115%
Length 4, alignment 0/ 0: 115%
Length 4, alignment 0/ 0: 115%
Length 32, alignment 0/ 0: 127%
Length 32, alignment 7/ 2: 395%
Length 32, alignment 0/ 0: 127%
Length 32, alignment 0/ 0: 127%
Length 8, alignment 0/ 0: 111%
Length 8, alignment 0/ 0: 124%
Length 8, alignment 0/ 0: 124%
Length 64, alignment 0/ 0: 128%
Length 64, alignment 6/ 4: 475%
Length 64, alignment 0/ 0: 131%
Length 64, alignment 0/ 0: 134%
Length 16, alignment 0/ 0: 128%
Length 16, alignment 0/ 0: 119%
Length 16, alignment 0/ 0: 128%
Length 128, alignment 0/ 0: 129%
Length 128, alignment 5/ 6: 475%
Length 128, alignment 0/ 0: 130%
Length 128, alignment 0/ 0: 129%
Length 32, alignment 0/ 0: 126%
Length 32, alignment 0/ 0: 126%
Length 32, alignment 0/ 0: 126%
Length 256, alignment 0/ 0: 127%
Length 256, alignment 4/ 8: 545%
Length 256, alignment 0/ 0: 126%
Length 256, alignment 0/ 0: 128%
Length 64, alignment 0/ 0: 171%
Length 64, alignment 0/ 0: 171%
Length 64, alignment 0/ 0: 174%
Length 512, alignment 0/ 0: 126%
Length 512, alignment 3/10: 585%
Length 512, alignment 0/ 0: 126%
Length 512, alignment 0/ 0: 127%
Length 128, alignment 0/ 0: 129%
Length 128, alignment 0/ 0: 128%
Length 128, alignment 0/ 0: 129%
Length 1024, alignment 0/ 0: 125%
Length 1024, alignment 2/12: 611%
Length 1024, alignment 0/ 0: 126%
Length 1024, alignment 0/ 0: 126%
Length 256, alignment 0/ 0: 128%
Length 256, alignment 0/ 0: 127%
Length 256, alignment 0/ 0: 128%
Length 2048, alignment 0/ 0: 125%
Length 2048, alignment 1/14: 625%
Length 2048, alignment 0/ 0: 125%
Length 2048, alignment 0/ 0: 125%
Length 512, alignment 0/ 0: 126%
Length 512, alignment 0/ 0: 127%
Length 512, alignment 0/ 0: 127%
Length 4096, alignment 0/ 0: 125%
Length 4096, alignment 0/16: 125%
Length 4096, alignment 0/ 0: 125%
Length 4096, alignment 0/ 0: 125%
Length 1024, alignment 0/ 0: 126%
Length 1024, alignment 0/ 0: 126%
Length 1024, alignment 0/ 0: 126%
Length 8192, alignment 0/ 0: 125%
Length 8192, alignment 63/18: 636%
Length 8192, alignment 0/ 0: 125%
Length 8192, alignment 0/ 0: 125%
Length 16, alignment 1/ 2: 317%
Length 16, alignment 1/ 2: 317%
Length 16, alignment 1/ 2: 317%
Length 32, alignment 2/ 4: 395%
Length 32, alignment 2/ 4: 395%
Length 32, alignment 2/ 4: 398%
Length 64, alignment 3/ 6: 475%
Length 64, alignment 3/ 6: 475%
Length 64, alignment 3/ 6: 477%
Length 128, alignment 4/ 8: 479%
Length 128, alignment 4/ 8: 479%
Length 128, alignment 4/ 8: 479%
Length 256, alignment 5/10: 543%
Length 256, alignment 5/10: 539%
Length 256, alignment 5/10: 543%
Length 512, alignment 6/12: 585%
Length 512, alignment 6/12: 585%
Length 512, alignment 6/12: 585%
Length 1024, alignment 7/14: 611%
Length 1024, alignment 7/14: 611%
Length 1024, alignment 7/14: 611%
Corinna Vinschen [Thu, 29 Jun 2017 13:30:35 +0000 (15:30 +0200)]
newlib: fix file mode of newly added complex sources
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Corinna Vinschen [Thu, 29 Jun 2017 11:55:10 +0000 (13:55 +0200)]
newlib: libm/complex/Makefile.in: regenerate
Aditya Upadhyay [Thu, 29 Jun 2017 07:06:09 +0000 (12:36 +0530)]
Adding csinl.c in Makefile.am
Signed-off-by: Aditya Upadhyay <aadit0402@gmail.com>
Aditya Upadhyay [Wed, 28 Jun 2017 20:24:32 +0000 (01:54 +0530)]
Importing csinl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:24:09 +0000 (01:54 +0530)]
Importing csinhl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:23:34 +0000 (01:53 +0530)]
Importing casinhl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:12:07 +0000 (01:42 +0530)]
Importing ctanl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:11:21 +0000 (01:41 +0530)]
Importing ctanhl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:10:31 +0000 (01:40 +0530)]
Importing cpowl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:09:48 +0000 (01:39 +0530)]
Importing conjl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:08:54 +0000 (01:38 +0530)]
Importing catanhl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:08:01 +0000 (01:38 +0530)]
Importing casinl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:06:47 +0000 (01:36 +0530)]
Importing ccosl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:05:44 +0000 (01:35 +0530)]
Importing cacosl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:04:23 +0000 (01:34 +0530)]
Adding cephes_subrl.h and cephes_subrl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:02:00 +0000 (01:32 +0530)]
Importing cexpl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:01:22 +0000 (01:31 +0530)]
Importing cprojl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 20:00:47 +0000 (01:30 +0530)]
Importing cargl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 19:58:51 +0000 (01:28 +0530)]
Importing csqrtl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 19:57:48 +0000 (01:27 +0530)]
Importing clogl.c from NetBSD.
Aditya Upadhyay [Wed, 28 Jun 2017 19:55:21 +0000 (01:25 +0530)]
Importing cacoshl.c from NetBSD.
Dionna Glaze [Thu, 29 Jun 2017 06:34:19 +0000 (08:34 +0200)]
unistd.h: Remove trailing whitespace
Corinna Vinschen [Thu, 29 Jun 2017 06:32:33 +0000 (08:32 +0200)]
unistd.h: remove mktemp
mktemp is already correctly declared in stdlib.h
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Dionna Glaze [Thu, 29 Jun 2017 06:30:04 +0000 (08:30 +0200)]
Make gethostname, getdtablesize, mktemp, ualarm available in BSD, XOPEN_SOURCE >= 500.
Brian Inglis [Mon, 26 Jun 2017 19:43:40 +0000 (13:43 -0600)]
replace shortcut parameter assignments with read loops, run with sh
Sebastian Pop [Fri, 23 Jun 2017 20:23:09 +0000 (15:23 -0500)]
aarch64: optimize the unaligned case of memcmp
This brings to newlib a performance improvement that we developed in Bionic
libc. That change has been submitted for review to Bionic libc:
https://android-review.googlesource.com/418279
A similar patch has been submitted for review in glibc:
https://sourceware.org/ml/libc-alpha/2017-06/msg01143.html
Patch written by Vikas Sinha and Sebastian Pop.
The performance was measured on the bionic-benchmarks on a hikey (aarch64 8xA53)
board. There was no performance change to the existing benchmark
and a performance improvement on the new benchmark for memcmp
on the unaligned side. The new benchmark has been submitted for
review at https://android-review.googlesource.com/414860
The overall performance improves by 18% for the small data set 8
and the performance improves by 450% for the large data set 64k.
The base is with the libc from /system/lib64. The bionic libc
with this patch is in /data.
hikey:/data # export LD_LIBRARY_PATH=/system/lib64
hikey:/data # ./bionic-benchmarks --benchmark_filter='BM_string_memcmp*'
Run on (8 X 2.4 MHz CPU s)
Benchmark Time CPU Iterations
----------------------------------------------------------------------
BM_string_memcmp/8 30 ns 30 ns
22955680 251.07MB/s
BM_string_memcmp/64 57 ns 57 ns
12349184 1076.99MB/s
BM_string_memcmp/512 305 ns 305 ns
2297163 1.56496GB/s
BM_string_memcmp/1024 571 ns 571 ns
1225211 1.66912GB/s
BM_string_memcmp/8k 4307 ns 4306 ns 162562 1.77177GB/s
BM_string_memcmp/16k 8676 ns 8675 ns 80676 1.75887GB/s
BM_string_memcmp/32k 19233 ns 19230 ns 36394 1.58695GB/s
BM_string_memcmp/64k 36986 ns 36984 ns 18952 1.65029GB/s
BM_string_memcmp_aligned/8 199 ns 199 ns
3519166 38.3336MB/s
BM_string_memcmp_aligned/64 386 ns 386 ns
1810734 158.073MB/s
BM_string_memcmp_aligned/512 1735 ns 1734 ns 403981 281.525MB/s
BM_string_memcmp_aligned/1024 3200 ns 3200 ns 218838 305.151MB/s
BM_string_memcmp_aligned/8k 25084 ns 25080 ns 28180 311.507MB/s
BM_string_memcmp_aligned/16k 51730 ns 51729 ns 13521 302.057MB/s
BM_string_memcmp_aligned/32k 103228 ns 103228 ns 6782 302.727MB/s
BM_string_memcmp_aligned/64k 207117 ns 207087 ns 3450 301.806MB/s
BM_string_memcmp_unaligned/8 339 ns 339 ns
2070998 22.5302MB/s
BM_string_memcmp_unaligned/64 1392 ns 1392 ns 502796 43.8454MB/s
BM_string_memcmp_unaligned/512 9194 ns 9194 ns 76133 53.1104MB/s
BM_string_memcmp_unaligned/1024 18325 ns 18323 ns 38206 53.2963MB/s
BM_string_memcmp_unaligned/8k 148579 ns 148574 ns 4713 52.5831MB/s
BM_string_memcmp_unaligned/16k 298169 ns 298120 ns 2344 52.4118MB/s
BM_string_memcmp_unaligned/32k 598813 ns 598797 ns 1085 52.188MB/s
BM_string_memcmp_unaligned/64k
1196079 ns
1196083 ns 540 52.2539MB/s
hikey:/data # export LD_LIBRARY_PATH=/data
hikey:/data # ./bionic-benchmarks --benchmark_filter='BM_string_memcmp*'
Run on (8 X 2.4 MHz CPU s)
Benchmark Time CPU Iterations
----------------------------------------------------------------------
BM_string_memcmp/8 30 ns 30 ns
23209918 252.802MB/s
BM_string_memcmp/64 57 ns 57 ns
12348447 1076.95MB/s
BM_string_memcmp/512 305 ns 305 ns
2296878 1.56471GB/s
BM_string_memcmp/1024 572 ns 571 ns
1224426 1.6689GB/s
BM_string_memcmp/8k 4309 ns 4308 ns 162491 1.77109GB/s
BM_string_memcmp/16k 9348 ns 9345 ns 74894 1.63285GB/s
BM_string_memcmp/32k 18329 ns 18322 ns 38249 1.6656GB/s
BM_string_memcmp/64k 36992 ns 36981 ns 18952 1.65045GB/s
BM_string_memcmp_aligned/8 199 ns 199 ns
3513925 38.3162MB/s
BM_string_memcmp_aligned/64 386 ns 386 ns
1814038 158.192MB/s
BM_string_memcmp_aligned/512 1735 ns 1735 ns 402279 281.502MB/s
BM_string_memcmp_aligned/1024 3204 ns 3202 ns 218761 304.941MB/s
BM_string_memcmp_aligned/8k 25577 ns 25569 ns 27406 305.548MB/s
BM_string_memcmp_aligned/16k 52143 ns 52123 ns 13522 299.769MB/s
BM_string_memcmp_aligned/32k 105169 ns 105127 ns 6637 297.26MB/s
BM_string_memcmp_aligned/64k 206508 ns 206383 ns 3417 302.835MB/s
BM_string_memcmp_unaligned/8 282 ns 282 ns
2482953 27.062MB/s
BM_string_memcmp_unaligned/64 542 ns 541 ns
1298317 112.77MB/s
BM_string_memcmp_unaligned/512 2152 ns 2152 ns 325267 226.915MB/s
BM_string_memcmp_unaligned/1024 4025 ns 4025 ns 173904 242.622MB/s
BM_string_memcmp_unaligned/8k 32276 ns 32271 ns 21818 242.09MB/s
BM_string_memcmp_unaligned/16k 65970 ns 65970 ns 10554 236.851MB/s
BM_string_memcmp_unaligned/32k 131241 ns 131242 ns 5129 238.11MB/s
BM_string_memcmp_unaligned/64k 266159 ns 266160 ns 2661 234.821MB/s
Corinna Vinschen [Fri, 23 Jun 2017 18:24:49 +0000 (20:24 +0200)]
cygwin: doc: Fix doc install path in postinstall script
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Jon Turney [Mon, 19 Jun 2017 16:18:36 +0000 (17:18 +0100)]
Update documentation of cygwin setup proxy configuration details
Jon Turney [Fri, 26 May 2017 11:23:39 +0000 (12:23 +0100)]
Update and sort list of cygwin setup command line options.
Corinna Vinschen [Thu, 22 Jun 2017 12:48:43 +0000 (14:48 +0200)]
Note regtool fix in release message
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Fujii Hironori [Tue, 20 Jun 2017 11:17:09 +0000 (13:17 +0200)]
cygwin: regtool: encode error messages correctly
Error messages of regtool can't be read, which are encoded in,
for instance, SHIFT_JIS in Japanese Windows. Fix by using
wide chars instead of multibyte.
Corinna Vinschen [Tue, 20 Jun 2017 11:09:07 +0000 (13:09 +0200)]
Revert "cygserver: Revamp thread sleep handling"
This reverts commit
b80b2c011936f7f075b76b6e59f9e8a5ec49caa1 .
Corinna Vinschen [Tue, 20 Jun 2017 08:06:17 +0000 (10:06 +0200)]
cygwin: readdir: Activate check for remote reparse points
Fix and move comment accordingly.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Joe_Lowe [Wed, 14 Jun 2017 20:01:28 +0000 (13:01 -0700)]
Compatibility improvements to reparse point handling.
Yaakov Selkowitz [Mon, 19 Jun 2017 16:52:02 +0000 (11:52 -0500)]
string: fix strverscmp doc inclusion
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Yaakov Selkowitz [Wed, 14 Jun 2017 20:26:38 +0000 (15:26 -0500)]
cygwin: export strverscmp, add versionsort
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Yaakov Selkowitz [Wed, 14 Jun 2017 20:22:00 +0000 (15:22 -0500)]
string: add strverscmp
The actual implementation is from musl (MIT license).
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Thomas Preud'homme [Thu, 15 Jun 2017 13:09:39 +0000 (14:09 +0100)]
Fix guard for siginfo_t and pthread_t definition
Commit
8a3b3bb4d7224d419cc1a4af60ccf7e70edc876b changed the guard on
some functions from _POSIX_THREADS to __POSIX_VISIBLE. As a consequence,
some use of siginfo_t and pthread_t became visible under configurations
where _POSIX_THREADS is unset but __POSIX_VISIBLE is. Build then fails
because the definition of those types are still unavailable.
This commit make those type definition visible for __POSIX_VISIBLE
configurations. This requires moving the siginfo_t definition out of the
RTEMS specific definitions in sys/signal.h while still guarding it
against cygwin case.
Corinna Vinschen [Mon, 19 Jun 2017 10:57:16 +0000 (12:57 +0200)]
Revert "Don't overread or write memory returned by _DTOA_R"
This reverts commit
efaef1bba263501e1e7264833ddfc9b8c20f9ebc .
Erik M. Bray [Thu, 15 Jun 2017 13:30:08 +0000 (15:30 +0200)]
Ensure that send() interrupted by a signal returns sucessfully
When SA_RESTART is not set on a socket, a blocking send() that is
interrupted mid-transition by a signal should return success (and
report just how many bytes were actually transmitted).
The err variable used here was not always guaranteed to be set
correctly in the loop, so better to just remove it and call
WSAGetLastError() explicitly.
This page took 0.067892 seconds and 5 git commands to generate.