| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During libgcc build the first include search path for <...> is
"../newlib/libc/sys/rtems/include". Move all RTEMS specific header
files to "libc/sys/rtems/include" so that they can be found. Later
during libc build the header files in the previous location were somehow
present, but for libgcc build they were invisible. This change is
necessary to use <pthread.h> for the GCC thread model implementation.
newlib/ChangeLog
2015-07-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
libc/sys/rtems/machine/_types.h: Move to ...
libc/sys/rtems/include/machine/_types.h: ... here.
libc/sys/rtems/machine/limits.h: Move to ...
libc/sys/rtems/include/machine/limits.h: ... here.
libc/sys/rtems/machine/param.h: Move to ...
libc/sys/rtems/include/machine/param.h: ... here.
libc/sys/rtems/sys/cpuset.h: Move to ...
libc/sys/rtems/include/sys/cpuset.h: ... here.
libc/sys/rtems/sys/dirent.h: Move to ...
libc/sys/rtems/include/sys/dirent.h: ... here.
libc/sys/rtems/sys/param.h: Move to ...
libc/sys/rtems/include/sys/param.h: ... here.
libc/sys/rtems/sys/syslimits.h: Move to ...
libc/sys/rtems/include/sys/syslimits.h: ... here.
libc/sys/rtems/sys/utime.h: Move to ...
libc/sys/rtems/include/sys/utime.h: ... here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Provide self-contained synchronization objects for RTEMS. The API was
designed to be able to use it for the Newlib internal locks, the C11
threads support, the GCC thread model support and the libgomp operating
system configuration in combination with <pthread.h>.
References:
https://lists.rtems.org/pipermail/devel/2015-July/011989.html
https://lists.rtems.org/pipermail/devel/2015-July/012000.html
Tickets:
https://devel.rtems.org/ticket/1247
https://devel.rtems.org/ticket/2274.
v2: Fix typo in _Condition_Wait_recursive_timed() declaration.
newlib/ChangeLog
2015-07-28 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libc/sys/rtems/include/sys/lock.h: New.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/_stdint.h: New file.
* libc/include/stdint.h (int8_t): Move to <sys/_stdint.h>.
(uint8_t): Likewise.
(int16_t): Likewise.
(uint16_t): Likewise.
(int32_t): Likewise.
(uint32_t): Likewise.
(int64_t): Likewise.
(uint64_t): Likewise.
(intptr_t): Likewise.
(uintptr_t): Likewise.
* libc/include/sys/types.h: Include <sys/_stdint.h>.
* libc/sys/rtems/machine/_types.h: Remove <stdint.h> include.
* libc/sys/time.h>: Replace __uint32_t with uint32_t and
__uint64_t with uint64_t.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/config.h: Dynamic reentrancy for or1k sys targets
* libc/sys/or1k/: New system for or1k baremetal
* libc/sys/or1k/Makefile.am: New file
* libc/sys/or1k/Makefile.in: New file
* libc/sys/or1k/aclocal.m4: New file
* libc/sys/or1k/configure.in: New file
* libc/sys/or1k/configure: New file
* libc/sys/or1k/getreent.S: New file
* libc/sys/or1k/mlock.S: New file
* libc/sys/or1k/or1k-asm.S: New file
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* NEWS: Update with 2.2.0 info.
* README: Ditto.
* acinclude.m4: Change version number to 2.2.0.
* libc/libc.texinfo: Ditto.
* libm/libm.texinfo: Ditto.
* configure: Regenerated.
* Makefile.in: Regenerated.
* doc/configure: Ditto.
* libc/*/configure: Ditto.
* libm/*/configure: Ditto.
* libc/sys/linux/shared.ld: Add VERS_2.2
|
|
|
|
| |
that NGROUPS is even.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Found by:
find -name '*.h' |xargs grep -i 'attribute.*(([a-z]'
For an example of the type of bugs this causes, try compiling this valid
C11 program (it's valid because 'noreturn' is reserved for use in the
user namespace unless you include <stdnoreturn.h>):
$ cat foo.c
#define noreturn __attribute__((noreturn))
#include <stdlib.h>
$ gcc -c -o foo.o -Wall foo.c
In file included from /usr/include/stdlib.h:11:0,
from foo.c:2:
foo.c:1:18: error: expected ')' before '__attribute__'
#define noreturn __attribute__((noreturn))
^
/usr/include/stdlib.h:66:28: error: expected ',' or ';' before ')' token
_VOID _EXFUN(abort,(_VOID) _ATTRIBUTE ((noreturn)));
^
* libc/machine/spu/spu_timer_internal.h: Decorate attribute names
with __, for namespace safety.
* libc/machine/xscale/machine/profile.h: Likewise.
* libc/include/stdlib.h: Likewise.
* libc/include/_ansi.h: Likewise.
* libc/include/sys/unistd.h: Likewise.
* libc/sys/linux/linuxthreads/libc-symbols.h: Likewise.
* libc/sys/linux/linuxthreads/internals.h: Likewise.
* libc/sys/linux/machine/i386/weakalias.h: Likewise.
* libc/sys/linux/machine/i386/dl-procinfo.h: Likewise.
* libc/sys/linux/machine/i386/dl-machine.h: Likewise.
* libc/sys/linux/libc-symbols.h: Likewise.
* libc/sys/linux/iconv/gconv_charset.h: Likewise.
* libc/sys/linux/include/resolv.h: Likewise.
* libc/sys/linux/sys/unistd.h: Likewise.
* libc/sys/linux/dl/atomicity.h: Likewise.
* libc/sys/linux/dl/dynamic-link.h: Likewise.
* libc/sys/linux/dl/ldsodefs.h: Likewise.
|
|
|
|
| |
(CPU_SET): Likewise.
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.host (sys_dir, newlib_cflags): Set sys_dir to tirtos and use
-D__DYNAMIC_REENT__ and -DMALLOC_PROVIDED compiler options for TIRTOS
target.
* libc/stdio/local.h (_STDIO_CLOSE_PER_REENT_STD_STREAMS): Change #ifdef
to not define this macro when __tirtos__ is defined.
* libc/sys/tirtos : Add support for TIRTOS.
* libc/sys/tirtos/Makefile.am, libc/sys/tirtos/lock.c: New files.
* libc/sys/tirtos/configure.in, libc/sys/tirtos/include/sys/lock.h: Ditto.
|
|
|
|
|
| |
* libc/sys/arm/syscalls.c (_sbrk): Define as weak symbols.
(_read, _write): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* NEWS: Update with 2.1.0 info.
* README: Ditto.
* acinclude.m4: Change version number to 2.1.0.
* aclocal.m4: Regenerated.
* configure: Ditto.
* Makefile.in: Regenerated.
* doc/aclocal.m4: Ditto.
* doc/configure: Ditto.
* libc/*/aclocal.m4: Ditto.
* libc/*/configure: Ditto.
* libc/libc.texinfo: Ditto.
* libm/*/aclocal.m4: Ditto.
* libm/*/configure: Ditto.
* libm/libm.texinfo: Ditto.
* libc/sys/linux/shared.ld: Add VERS_2.1
|
|
|
|
| |
libc/sys/rtems/machine/param.h.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
header includes. Include <sys/features.h> for
__GNUC_PREREQ__().
(__u?int.*_t): Define via GCC provided __U?INT.*_TYPE__ if
available.
(__intptr_t): Define.
(__uintptr_t): Likewise.
* libc/include/stdint.h: Include <machine/_default_types.h>
instead of <_ansi.h>.
(u?int.*_t): Define via __u?int.*_t provided by
<machine/_default_types.h>.
(u?int_fast.*_t): Define via GCC provided
__U?INT_FAST.*_TYPE__ if available.
(U?INT.*(MIN|MAX)): Define via GCC provided __U?INT.*(MIN|MAX)__
if available.
(U?INT.*_C): Define via GCC provided __U?INT.*_C if available.
* libc/include/sys/cdefs.h: Use <machine/_default_types.h>
instead of <stdint.h>.
* libc/sys/rtems/sys/cpuset.h: Likewise.
* libc/sys/rtems/machine/_types.h: Include <stdint.h> for
FreeBSD compatibility.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/sys/rtems/cpusetalloc.c: New file.
* libc/sys/rtems/cpusetfree.c: Likewise.
* libc/sys/rtems/Makefile.am (lib_a_SOURCES): Add new files.
* libc/sys/rtems/Makefile.in: Regenerate.
* libc/sys/rtems/sys/cpuset.h: Delete #if 0 block. Include
<stddef.h> for size_t.
(_NCPUBITS): Avoid NBBY and assume 8 bits per char.
(__cpuset_mask): Use int instead of size_t parameter for Linux
compatibility.
(__cpuset_index): Likewise.
(__cpuset_alloc): Declare.
(__cpuset_free): Likewise.
(CPU_ALLOC_SIZE): Likewise.
(CPU_ALLOC): Define.
(CPU_FREE): Likewise.
(CPU_ZERO_S): Likewise.
(CPU_FILL_S): Likewise.
(CPU_SET_S): Likewise.
(CPU_CLR_S): Likewise.
(CPU_ISSET_S): Likewise.
(CPU_COUNT_S): Likewise.
(CPU_AND_S): Likewise.
(CPU_OR_S): Likewise.
(CPU_XOR_S): Likewise.
(CPU_NAND_S): Likewise.
(CPU_EQUAL_S): Likewise.
(CPU_ZERO): Use CPU_ZERO_S().
(CPU_FILL): Use CPU_FILL_S().
(CPU_SET): Use CPU_SET_S().
(CPU_CLR): Use CPU_CLR_S().
(CPU_ISSET): Use CPU_ISSET_S().
(CPU_COUNT): Use CPU_COUNT_S().
(CPU_AND): Use CPU_AND_S().
(CPU_OR): Use CPU_OR_S().
(CPU_XOR): Use CPU_XOR_S().
(CPU_NAND): Use CPU_NAND_S().
(CPU_EQUAL): Use CPU_EQUAL_S().
(CPU_CMP): Delete superfluous const qualifier.
(CPU_EMPTY): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/time.h (time): Add restrict keyword.
* libc/include/wchar.h (wcsftime): Add restrict keyword.
* libc/time/asctime_r.c (asctime_r): Same.
* libc/time/gmtime_r.c (gmtime_r): Same.
* libc/time/lcltime_r.c (lcltime_r): Same.
* libc/time/strftime.c (strftime): Same.
* libc/time/strptime.c (strptime): Same.
* libc/sys/linux/linuxthreads/timer_create.c (timer_create): Same.
* libc/sys/linux/linuxthreads/timer_settime.c (timer_settime): Same.
|
|
|
|
|
|
|
| |
* libc/include/sys/time.h (gettimeofday): Add restrict keyword.
(setitimer): Likewise.
* libc/sys/rdos/gettod.c (gettimeofday): Likewise.
* libc/sys/rtems/crt0.c (gettimeofday): Likewise.
|
|
|
|
|
|
|
|
| |
* libc/include/sys/unistd.h (readlink): Add restrict keyword.
(readlinkat): Ditto.
(swab): Ditto.
* libc/sys/rdos/readlink.c (readlink): Ditto.
* libc/string/swab.c (swab): Ditto.
|
|
|
|
| |
* libc/sys/linux/statvfs.c (statvfs): Added restrict keyword.
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/sys/rdos/chown.c, libc/sys/rdos/close.c, libc/sys/rdos/execve.c,
libc/sys/rdos/fork.c, libc/sys/rdos/fstat.c, libc/sys/rdos/getpid.c,
libc/sys/rdos/gettod.c, libc/sys/rdos/isatty.c, libc/sys/rdos/kill.c,
libc/sys/rdos/link.c, libc/sys/rdos/lseek.c, libc/sys/rdos/open.c,
libc/sys/rdos/rdos.h, libc/sys/rdos/read.c, libc/sys/rdos/readlink.c,
libc/sys/rdos/sbrk.c, libc/sys/rdos/stat.c, libc/sys/rdos/symlink.c,
libc/sys/rdos/times.c, libc/sys/rdos/unlink.c, libc/sys/rdos/wait.c,
libc/sys/rdos/write.c: Convert from DOS to UNIX CRLF.
|
|
|
|
|
|
|
|
| |
* libc/posix/readdir_r.c: Add restrict keyword.
* libc/machine/spu/sys/dirent.h, libc/sys/decstation/sys/dirent.h,
libc/sys/linux/sys/dirent.h, libc/sys/rtems/sys/dirent.h,
libc/sys/sparc64/sys/dirent.h, libc/sys/sun4/sys/dirent.h,
libc/sys/sysvi386/sys/dirent.h: Add readdir_r() prototype.
|
|
|
|
| |
* libc/sys/rdos/stat.c: Remove stray +.
|
|
|
|
|
|
| |
* libc/include/sys/stat.h, libc/sys/linux/sys/stat.h,
libc/sys/m88kbug/syscalls.c, libc/sys/rdos/stat.c,
libc/sys/sparc64/sys/stat.h: Add restrict keyword.
|
|
|
|
|
| |
* libc/iconv/lib/iconv.c, libc/include/iconv.h,
libc/sys/linux/iconv/iconv.c: Add restrict keyword.
|
|
|
|
| |
* libc/sys/rtems/sys/cpuset.h: New file.
|
|
|
|
|
| |
* libc/include/stdlib.h: Add prototype of realpath().
* libc/sys/linux/realpath.c: Add restrict keyword.
|
|
|
|
|
|
| |
* libc/include/sys/param.h (MAXPATHLEN): Define.
* libc/sys/rtems/sys/param.h (MAXPATHLEN): Likewise.
* libc/unix/getcwd.c: Include <sys/param.h> for MAXPATHLEN.
|
|
|
|
|
| |
* libc/libc/sys/rtems/sys/param.h: Update some parameters to
the latest FreeBSD values.
|
|
|
|
| |
* libc/sys/rtems/machine/_types.h (_HAVE_SYSTYPES): Define.
|
|
|
|
|
|
|
| |
* libc/sys/rtems/machine/_types.h (__dev_t): Define.
(__dev_t_defined) Likewise.
* libc/include/sys/_types.h (__dev_t): Delete RTEMS specific
definition.
|
|
|
|
|
| |
* libc/sys/rtems/machine/_types.h (_ssize_t): Delete.
(__ssize_t_defined) Likewise.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libc/sys/linux/net/getnameinfo.c: Add restrict keyword to getnameinfo()
and getaddrinfo() to increase standards compliance and match glibc.
* libc/include/string.h, libc/string/memccpy.c, libc/string/memcpy.c,
libc/string/stpcpy.c, libc/string/stpncpy.c, libc/string/strcat.c,
libc/string/strncat.c, libc/string/strncpy.c, libc/string/strtok.c,
libc/string/strtok_r.c, libc/string/strxfrm.c
libc/machine/microblaze/strcpy.c, libc/machine/xscale/memcpy.c,
libc/machine/cris/memcpy.c: Add __restrict to prototype to
increase standards compliance.
|
|
|
|
|
| |
* libc/sys/arm/libcfuncs.c (do_AngelSWI): Delete.
* libc/sys/arm/swi.h: Copy over from libgloss.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/include/sys/cdefs.h (__containerof): New define.
(__DEQUALIFY): Likewise.
* libc/include/sys/queue.h (TRACEBUF_INITIALIZER): Likewise.
(TRACEBUF): Likewise.
(LIST_FOREACH_SAFE): Likewise.
(LIST_PREV): Likewise.
(LIST_SWAP): Likewise.
(QMD_LIST_CHECK_HEAD): Likewise.
(QMD_LIST_CHECK_NEXT): Likewise.
(QMD_LIST_CHECK_PREV): Likewise.
(QMD_SAVELINK): Likewise.
(QMD_TAILQ_CHECK_HEAD): Likewise.
(QMD_TAILQ_CHECK_NEXT): Likewise.
(QMD_TAILQ_CHECK_PREV): Likewise.
(QMD_TAILQ_CHECK_TAIL): Likewise.
(QMD_TRACE_ELEM): Likewise.
(QMD_TRACE_HEAD): Likewise.
(SLIST_FOREACH_PREVPTR): Likewise.
(SLIST_FOREACH_SAFE): Likewise.
(SLIST_REMOVE_AFTER): Likewise.
(SLIST_SWAP): Likewise.
(STAILQ_FOREACH_SAFE): Likewise.
(STAILQ_REMOVE_AFTER): Likewise.
(STAILQ_SWAP): Likewise.
(TAILQ_FOREACH_REVERSE_SAFE): Likewise.
(TAILQ_FOREACH_SAFE): Likewise.
(TAILQ_SWAP): Likewise.
(TRASHIT): Likewise.
(SLIST_REMOVE): Use SLIST_REMOVE_AFTER().
(STAILQ_LAST): Use __containerof().
(STAILQ_REMOVE): Use STAILQ_REMOVE_AFTER().
|
| |
|
|
|
|
|
| |
V850e2v3.
* v850/crt0.S (_start): Enable FPU for the V850e2v3.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* NEWS: Update with 2.0.0 info.
* README: Ditto.
* acinclude.m4: Change version number to 2.0.0.
* aclocal.m4: Regenerated.
* configure: Ditto.
* Makefile.in: Regenerated.
* doc/aclocal.m4: Ditto.
* doc/configure: Ditto.
* libc/*/aclocal.m4: Ditto.
* libc/*/configure: Ditto.
* libc/libc.texinfo: Ditto.
* libm/*/aclocal.m4: Ditto.
* libm/*/configure: Ditto.
* libm/libm.texinfo: Ditto.
* libc/sys/linux/shared.ld: Add VERS_2.0
|
|
|
|
| |
of "end". Mark allocated memory by applying PRELD.
|
|
|
|
|
|
|
|
| |
array of undefined size, to avoid problems when compiled with
-msda=4.
* v850/sbrk.c (_sbrk): Change heap_start to be an array of
undefined size, to avoid problems when compiled with -msda=4.
|
|
|
|
| |
start up code for v850e2 and v850e2v3 too.
|
|
|
|
|
| |
* libc/sys/rtems/machine/_types.h (_ssize_t): Use signed int for
__v850__, __851__.
|
|
|
|
|
| |
* libc/sys/rtems/machine/_types.h (_ssize_t): Add __ARM_EABI__,
__v850__, __851__.
|
| |
|