summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-01-29Richard Sandiford writes:Mike Frysinger
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.
2007-01-29- s/if USE___THREAD/if defined USE___THREAD && USE___THREAD/gBernhard Reutner-Fischer
2007-01-29- see if defined foo before trying to look at the value of foo (that should ↵Bernhard Reutner-Fischer
be 0 in this case. Avoids some warnings).
2007-01-29- sync with glibc (and provide a check for icc).Bernhard Reutner-Fischer
Only affects gcc <2.7 or non-gcc compilers that bailed earlier due to missing int64_t
2007-01-29pull in unistd.h for syscall() prototypeMike Frysinger
2007-01-29use ifdef rather than if for stack directionMike Frysinger
2007-01-29fix from Atsushi Nemoto for displaying of 64bit typesMike Frysinger
2007-01-29fix from Roman Kononov for reading in of 64bit typesMike Frysinger
2007-01-29make sure reading 64bit types worksMike Frysinger
2007-01-29make sure 64bit output is correctMike Frysinger
2007-01-29since these functions get exported, namespace the argumentsMike Frysinger
2007-01-29mark local function staticMike Frysinger
2007-01-29fixup shadowed warningsMike Frysinger
2007-01-29mark some funcs as noreturnMike Frysinger
2007-01-29fixup prototype warningsMike Frysinger
2007-01-29check to see if __USE_FILE_OFFSET64 is defined rather than if it evaluates ↵Mike Frysinger
to true
2007-01-29make error output a little more helpfulMike Frysinger
2007-01-29fixup warningsMike Frysinger
2007-01-29fix test to work even if CPPFLAGS contains -DNDEBUGMike Frysinger
2007-01-29sync some fixes from glibcMike Frysinger
2007-01-29missed an underscore in previous commitMike Frysinger
2007-01-28Bernhard Fischer writes: add undef/nonnull warnings to EXTRA_WARNINGSMike Frysinger
2007-01-28Bernhard Fischer writes: note how uClibc chooses to handle __resolved==NULLMike Frysinger
2007-01-28sync with glibc as pointed out by Bernhard FischerMike Frysinger
2007-01-28- commentary typo fixBernhard Reutner-Fischer
2007-01-28fix from Bernd Schmidt to make sure _dl_debug_state isnt optimized away and ↵Mike Frysinger
does not generate relocs
2007-01-28as pointed out by Jocke, use "2" for actual error messages and ↵Mike Frysinger
_dl_debug_file for debug messages
2007-01-28initial waitid() implementationMike Frysinger
2007-01-28need string.h for memset()Mike Frysinger
2007-01-28note 0.9.28.1 releaseMike Frysinger
2007-01-28its a new yearMike Frysinger
2007-01-28make sure we clear out the buffer so that random garbage on the stack doesnt ↵Mike Frysinger
screw us up
2007-01-28Paul Brook writes:Mike Frysinger
The patch below tweaks the ARM nommu startup code so that doubleword stack alignment is preserved. This is required on EABI targets.
2007-01-28fix typo as pointed out by Tony Wu and cleanup sourceMike Frysinger
2007-01-28dont rely on random stack state to trigger this issue; force the default ↵Mike Frysinger
stat structs to alternative bit masks
2007-01-28new test taken from stat issue with new tarMike Frysinger
2007-01-28use .bz2 rather than .gzMike Frysinger
2007-01-27fix from blackfin repo: Jie Zhang writes: update __kernel_ipc_pid_t, ↵Mike Frysinger
__kernel_uid_t and __kernel_gid_t types to match actual kernel types
2007-01-27fix from blackfin repo: Jie Zhang writes: Passing NULL as the second ↵Mike Frysinger
argument to utimes () if the second argument to utime () is NULL as the kernel will take care of getting/setting current time
2007-01-26- fix format of commentBernhard Reutner-Fischer
2007-01-26dont actually have to worry about local changes as svn export takes care of thatMike Frysinger
2007-01-26Fix libdl bug reported by Cedric Hombourger inJoakim Tjernlund
http://uclibc.org/lists/uclibc/2007-January/017165.html
2007-01-24fix from Bryan Wu: return NULL upon error, not the NULL stringMike Frysinger
2007-01-22Recognize _SC_MONOTONIC_CLOCK in sysconf() even if __NR_clock_getresPeter Kjellerstedt
is not defined.
2007-01-21- repair misplaced #endif that got introduced in r17410. Fixes compilation.Bernhard Reutner-Fischer
2007-01-20Disable declarations for NPTL."Steven J. Hill"
2007-01-20The case for _SC_MONOTONIC_CLOCK should only exist if 'clock_getres' does."Steven J. Hill"
2007-01-20- Trim superfluous trailing whitespace. No obj-code changes.Bernhard Reutner-Fischer
2007-01-11I fixed that item long ago.Joakim Tjernlund
2007-01-11Peter Mazinger pointed out that my last commit was faulty.Joakim Tjernlund
This should fix it.