summaryrefslogtreecommitdiffstats
path: root/include/sys/cdefs.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove the rest of "bounded pointers" scaffolding. gcc website says"Denis Vlasenko2008-12-131-8/+0
| | | | | | "Bounds Checking Projects... This project has been abandoned" for four years at least.
* use the __extern_always_inline define from cdefs.h instead of duplicating ↵Mike Frysinger2008-01-061-2/+4
| | | | gcc version checking in every pt-machine.h header ... while __extern_always_inline should work fine, i think what is intended is __extern_inline ... should double check later
* sync with glibc to get the extern inline directiveMike Frysinger2008-01-051-2/+38
|
* Richard Sandiford writes:Mike Frysinger2007-01-291-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | However, retesting on m68k showed up a problem that had appeared in uClibc since the last time I tried. Specifically, revision 15785 did: -#define HEAP_GRANULARITY (sizeof (HEAP_GRANULARITY_TYPE)) +#define HEAP_GRANULARITY (__alignof__ (HEAP_GRANULARITY_TYPE)) -#define MALLOC_ALIGNMENT (sizeof (double)) +#define MALLOC_ALIGNMENT (__alignof__ (double)) The problem is that (a) MALLOC_HEADER_SIZE == MALLOC_ALIGNMENT (b) the header contains a size value of type size_t (c) sizeof (size_t) is 4 on m68k, but... (d) __alignof__ (double) is only 2 (the largest alignment used on m68k) So we only allocate 2 bytes for the 4-byte header, and the least significant 2 bytes of the size are in the user's area rather than the header. The patch below fixes that problem by redefining MALLOC_HEADER_SIZE to: MAX (MALLOC_ALIGNMENT, sizeof (size_t)) (but without the help of the MAX macro ;)). However, we really would like to have word alignment on Coldfire. It makes a big performance difference, and because we have to allocate a 4-byte header anyway, what wastage there is will be confined to the end of the allocated block. Any wastage will also be limited to 2 bytes per allocation compared to the current alignment. I've therefore used the __aligned__ type attribute to create a double type that has at least sizeof (size_t) bytes of alignment. I've introduced a new __attribute_aligned__ macro for this. It might seem silly protecting against old or non-GNU compilers here, but the extra alignment is only an optimisation, and having the macro is more in the spirit of the other attribute code.
* disable deprecated warnings for some filesMike Frysinger2006-01-201-1/+1
|
* Enable __THROW,_NTH,REDIRECT_NTHPeter S. Mazinger2005-11-181-4/+1
|
* sync with glibc versionsMike Frysinger2005-07-021-11/+67
|
* Revert to using uClibc-specific c-symbol-prefix stuffMiles Bader2003-09-261-2/+1
| | | | (__C_SYMBOL_PREFIX__).
* Add a new *scanf implementation, includeing the *wscanf functions.Manuel Novoa III2003-08-011-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Should be standards compliant and with several optional features, including support for hexadecimal float notation, locale awareness, glibc-like locale-specific digit grouping with the `'' flag, and positional arg support. I tested it pretty well (finding several bugs in glibc's scanf in the process), but it is brand new so be aware. The *wprintf functions now support floating point output. Also, a couple of bugs were squashed. Finally, %a/%A conversions are now implemented. Implement the glibc xlocale interface for thread-specific locale support. Also add the various *_l(args, locale_t loc_arg) funcs. NOTE!!! setlocale() is NOT threadsafe! NOTE!!! The strto{floating point} conversion functions are now locale aware. The also now support hexadecimal floating point notation. Add the wcsto{floating point} conversion functions. Fix a bug in mktime() related to dst. Note that unlike glibc's mktime, uClibc's version always normalizes the struct tm before attempting to determine the correct dst setting if tm_isdst == -1 on entry. Add a stub version of the libintl functions. (untested) Fixed a known memory leak in setlocale() related to the collation data. Add lots of new config options (which Erik agreed to sort out :-), including finally exposing some of the stripped down stdio configs. Be careful with those though, as they haven't been tested in a long time. (temporary) GOTCHAs... The ctype functions are currently incorrect for 8-bit locales. They will be fixed shortly. The ctype functions are now table-based, resulting in larger staticly linked binaries. I'll be adding an option to use the old approach in the stub locale configuration.
* Ok, this commit is _huge_ and its gonna change the world. I'veEric Andersen2002-10-311-1/+1
| | | | | | | | | | | | | | | been working on a new config system on and off for about 6 months now, but I've never been fully satisfied. Well, I'm finally am happy with the new config system, so here it is. This completely removes the old uClibc configuration system, and replaces it with an entirely new system based on LinuxKernelConf, from http://www.xs4all.nl/~zippel/lc/ As it turns out, Linus has just merged LinuxKernelConf into Linux 2.5.45, so it looks like I made the right choice. I have thus far updated only x86. I'll be updating the other architectures shortly. -Erik
* (__ASMNAME): Use C_SYMBOL_PREFIX.Miles Bader2002-07-241-3/+2
| | | | (__ASMNAME2): Macro removed.
* Rev all the header files to sync things with glibc 2.2.4Eric Andersen2001-09-271-27/+195
|
* The main part of the C++ support is the definition of __BEGIN_DECLSDavid McCullough2001-07-111-3/+8
| | | | and __END_DECLS in this file based on the __cplusplus define.
* Added definition of __THROWDavid Schleef2001-05-261-0/+13
|
* Patch from "D. Jeff Dionne / VE3DJF" <jeff@rt-control.com>0_9_1aErik Andersen2000-05-141-5/+0
| | | | | to allow uC-libc to compile under x86. -Erik
* Initial revision0_9_1Erik Andersen2000-05-141-0/+36