ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libecb/Changes
Revision: 1.8
Committed: Wed Sep 26 19:00:38 2012 UTC (11 years, 7 months ago) by root
Branch: MAIN
Changes since 1.7: +1 -0 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 0x00010001
2 - add ecb_is_pot32/64.
3 - add intptr_t/uintptr_t.
4 - add ECB_PTRSIZE.
5 - more macros for C/C++ version checks.
6 - support C11 atomics for memory fences.
7 - support gcc-4.7 atomics for memory fences.
8
9 TODO: ffs/clz
10 64 bit variants of everything
11 TODO: examples from X for clz/ctz
12 TODO: arithmetic right shift
13 TODO: template/generic functions for x32/x64 and so on
14 TODO: #define ecb_integer_multiples_of(n,d) ((char (*)[d])(n) - (char (*)[d])0)
15 TODO: generalised shift
16 TODO: #define ECB_FAST_UNALIGNED_ACCESS
17 unsigned long gensh(unsigned long v, int x) {
18 int a, b;
19 a = (v << x) & -(((unsigned int)x) < 32);
20 x = -x;
21 b = (v >> x) & -(((unsigned int)x) < 32);
22 return a|b;
23 }