implemented Setup.hs to build boehm cpp libs and install them;
[hs-boehmgc.git] / gc-7.2 / libatomic_ops / ChangeLog
diff --git a/gc-7.2/libatomic_ops/ChangeLog b/gc-7.2/libatomic_ops/ChangeLog
new file mode 100644 (file)
index 0000000..04735d5
--- /dev/null
@@ -0,0 +1,1489 @@
+[7.2d]
+
+2012-08-09  Ivan Maidanski <ivmai@mail.ru>
+
+       * README: Change version to 7.2d (rev. D).
+
+2012-08-01  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops.h (AO_compiler_barrier): Add parentheses and cast to
+       void.
+
+2012-07-12  Ivan Maidanski <ivmai@mail.ru>
+
+       * config.guess: Regenerate (by autoreconf -vif using autoconf-2.68,
+       automake-1.11.1 and libtool-2.4).
+       * config.sub: Likewise.
+
+2012-07-04  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/x86.h
+       (AO_compare_double_and_swap_double_full): Use EDI register for
+       "new_val1" argument in PIC mode only for GCC 4.3+ to workaround
+       a problem with older compiler versions (e.g., GCC 4.2.1 [FreeBSD])
+       that do not recognize 'D' as a valid register specification; update
+       comment.
+
+2012-07-01  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/generalize-small.template
+       (AO_XSIZE_fetch_and_add_full,
+       AO_XSIZE_fetch_and_add_acquire, AO_XSIZE_fetch_and_add_release):
+       Fix type of function result by adding
+       'unsigned' to XCTYPE.
+       * src/atomic_ops/generalize-small.h: Regenerate.
+
+[7.2]
+
+2012-05-11  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac, README: Bump version to 7.2 (final).
+       * configure: Regenerate.
+
+2012-05-01  H.J. Lu <hjl.tools@gmail.com>
+
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_fetch_and_add_full,
+       AO_and_full, AO_or_full, AO_xor_full, AO_compare_and_swap_full):
+       Remove 'q' suffix in asm instruction.
+
+2012-04-16  H.J. Lu <hjl.tools@gmail.com>
+
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_T_IS_INT): Defined
+       for x32.
+
+2012-03-28  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac (PICFLAG): Adjust AC_MSG_CHECKING message; report
+       "none" result if no -fPIC is needed (for Cygwin/MinGW); determine
+       whether GCC -fPIC option causes __PIC__ macro definition; pass
+       -D __PIC__ to PICFLAG (instead of CFLAGS) only if not defined
+       automatically in case -fPIC specified; update comment.
+
+2012-03-26  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h: Do not use __m128
+       if GCC pre-v4 (at least, xmmintrin.h is missing in gcc-3.4.3-x86_64
+       included in Solaris 10 distribution).
+
+2012-03-26  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h: Fix a typo in
+       comment.
+
+2012-03-19  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure: Regenerate.
+       * Makefile.in: Likewise.
+
+2011-08-14  Petter Urkedal <paurkedal@gmail.com>
+
+       * atomic_ops.pc.in -> pkgconfig/atomic_ops.pc.in: Moved.
+       * pkgconfig/atomic_ops-uninstalled.pc.in: Added developer version.
+       * configure.ac, Makefile.am: Update accordingly.
+
+2011-08-04  Ivan Maidanski <ivmai@mail.ru> (really Petter Urkedal)
+
+       * atomic_ops.pc.in: new file.
+       * Makefile.am (pkgconfigdir, pkgconfig_DATA): new items.
+       * configure.ac (AC_CONFIG_FILES): add atomic_ops.pc.
+       * configure, Makefile.in: Regenerate.
+
+2012-03-07  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/x86.h
+       (AO_compare_double_and_swap_double_full): Use EDI register for
+       "new_val1" argument instead of a memory operand and use XCHG assembler
+       instruction instead of push/pop in case of PIC mode (to workaround
+       a bug in GCC 4.6.1); update the comment.
+
+2012-03-07  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops_stack.c (AO_stack_push_release): Make "cptr" local
+       variable volatile to workaround a bug in clang-1.1/x86 compiler; add
+       comment.
+
+2012-03-07  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/x86.h
+       (AO_compare_double_and_swap_double_full): Fix argument name in the
+       comment.
+       * src/atomic_ops/sysdeps/sunc/x86.h
+       (AO_compare_double_and_swap_double_full): Likewise.
+
+2012-03-04  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops_malloc.h (AO_malloc_enable_mmap): Fix a typo in the
+       comment.
+
+2012-01-19  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/test_atomic.c (main): Put "void" keyword into the arguments
+       specification of the function prototype.
+       * tests/test_stack.c (main): Likewise.
+
+2011-12-16  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h (__ARM_ARCH_7__, __ARM_ARCH_7A__):
+       Recognize to override __ARM_ARCH_5xx__ macros (since Android NDK GCC
+       defines both for armv7); update comment.
+
+2011-11-29  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/hexagon.h: Include generalize.h file
+       before ao_t_is_int.h one.
+       * src/atomic_ops/sysdeps/gcc/ia64.h: Likewise.
+       * src/atomic_ops/sysdeps/hpc/ia64.h: Likewise.
+
+2011-11-03  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/generalize-small.template
+       (AO_XSIZE_fetch_and_add_full, AO_XSIZE_fetch_and_add_acquire,
+       AO_XSIZE_fetch_and_add_release): Change return type from AO_t to
+       XCTYPE.
+       * src/atomic_ops/generalize-small.h: Regenerate.
+
+2011-10-24  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/mips.h (AO_compare_and_swap_full):
+       Change "result" local variable type from AO_t to int.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_compare_and_swap_full):
+       Likewise.
+
+2011-10-24  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/test_atomic_include.h: Regenerate.
+
+2011-10-24  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/test_atomic_include.template (test_atomicXX): Add action for
+       the missing AO_compare_and_swap primitive.
+
+2011-10-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops.c (init_lock): Define only unless AO_USE_NO_SIGNALS.
+
+2011-10-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * doc/README.txt: Fix a typo.
+
+2011-10-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/alpha.h (AO_compare_and_swap): Cast
+       returned value to int.
+
+2011-10-17  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/Makefile.in: Regenerate.
+
+2011-10-17  Ivan Maidanski <ivmai@mail.ru> (really Thorsten Glaser)
+
+       * src/atomic_ops/sysdeps/gcc/m68k.h (AO_test_and_set_full): Cast the
+       returned value.
+
+2011-10-15  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/s390.h (AO_compare_and_swap_full):
+       Change return from AO_t to int.
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h (AO_compare_and_swap_acquire,
+       AO_compare_and_swap_release, AO_compare_and_swap_full): Likewise.
+
+2011-10-11  Ivan Maidanski <ivmai@mail.ru> (really Linas Vepstas)
+
+       * src/atomic_ops/sysdeps/Makefile.am (nobase_private_HEADERS): Add
+       hexagon.h.
+       * src/atomic_ops.h: Include hexagon.h file.
+       * src/atomic_ops/sysdeps/gcc/hexagon.h: New file.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops.c
+       (AO_non_posix_implementation_is_entirely_in_headers): Make external.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure: Regenerate.
+       * tests/Makefile.in: Ditto.
+       * tests/test_atomic_include.h: Ditto.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac (PICFLAG, THREADDLLIBS): Define as empty for MinGW.
+       * configure.ac (have_pthreads): New definition (set to true unless
+       MinGW).
+       * configure.ac (HAVE_PTHREAD_H): New AM conditional (based on
+       have_pthreads value).
+       * tests/Makefile.am (test_atomic_pthreads_SOURCES,
+       test_atomic_pthreads_CPPFLAGS, test_atomic_pthreads_LDADD): Define
+       only if HAVE_PTHREAD_H.
+       * tests/Makefile.am (TESTS): Don't include test_atomic_pthreads unless
+       HAVE_PTHREAD_H.
+       * tests/Makefile.am (check_PROGRAMS): Define to TESTS value.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac (PICFLAG): Set to -fPIC if GCC but not Gygwin.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/test_malloc.c (LIST_LENGTH, LARGE_OBJ_SIZE): Define to
+       a smaller value unless HAVE_MMAP.
+
+2011-09-21  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/test_malloc.c (cons, run_one_test): Call exit with a non-zero
+       code (instead of abort) if out of memory.
+       * tests/test_stack.c (add_elements): Likewise.
+       * tests/test_stack.c (main): Use a distinct exit code if a thread
+       creation failed.
+
+2011-09-15  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/emul_cas.h: Fix a typo (replace AO_FORCE_CAS
+       with AO_REQUIRE_CAS in a comment).
+
+2011-09-08  Ivan Maidanski <ivmai@mail.ru> (really Petter Urkedal)
+
+       * src/Makefile.am, tests/Makefile.am: Set compiler include paths
+       to $(top_builddir)/src and $(top_srcdir)/src.
+       * src/Makefile.in: Regenerate.
+       * tests/Makefile.in: Ditto.
+
+2011-07-14  Ivan Maidanski <ivmai@mail.ru>
+
+       * tests/list_atomic.template (list_atomicXX): Remove "addr" local
+       variable (use "&val" instead); initialize "newval" and "oldval"
+       local variables; rename "tsaddr" local variable to "ts" one.
+       * tests/list_atomic.template (list_atomicXX): Fix
+       AO_test_and_setXX call (pass address instead of value).
+       * tests/list_atomic.template: Expand all tabs to spaces; remove
+       trailing spaces at EOLn.
+       * tests/run_parallel.inc: Ditto.
+       * tests/test_atomic.c: Ditto.
+       * tests/list_atomic.c: Regenerate.
+       * tests/run_parallel.inc (AO_PTRDIFF_T): New macro.
+       * tests/run_parallel.inc (tramp): Cast between pointer and integer
+       types via casting to AO_PTRDIFF_T.
+       * tests/test_atomic.c (add1sub1_thr, acqrel_thr): Ditto.
+       * tests/run_parallel.inc (run_parallel): Adjust printf format
+       specifiers for DWORD parameters.
+       * tests/test_stack.c: Skip test if no pthreads.
+
+2011-06-27  Ivan Maidanski <ivmai@mail.ru> (really Jeremy Huddleston)
+
+       * src/atomic_ops/sysdeps/gcc/x86.h (AO_test_and_set_full):
+       Explicitly cast 0xff to unsigned char (otherwise LLVM v2.7 GAS
+       reports an error); don't recognize AO_XCHGB_RET_WORD.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_test_and_set_full):
+       Ditto.
+
+2011-06-15  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac, README: Change to version 7.2alpha7.
+       * configure: Regenerate.
+
+[7.2alpha6]
+
+2011-06-14  Ivan Maidanski  <ivmai@mail.ru>
+
+       * configure.ac, README: Change to version 7.2alpha6.
+       * configure: Regenerate.
+
+2011-06-07  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_nop_full, AO_load): Do not
+       define for pre-ARMv6 directly (revert part of the previous
+       commit).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set,
+       AO_test_and_set_full): Refine the comment.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set_full): Define
+       SWP-based implementation at the end of file (if none of
+       AO_test_and_set functions are defined previously).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set): Remove
+       SWP-based implementation (revert part of the previous commit).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_store): Remove redundant
+       definition at the file end (revert part of the previous commit).
+
+2011-06-07  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h: Handle ARMv6M architecture.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set): Force "swp"
+       instruction usage (instead of ldrex/strex) if AO_FORCE_USE_SWP;
+       add a comment.
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double): Handle ARMv7EM architecture
+       (similar to ARMv7M).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set, AO_nop_full,
+       AO_load, AO_store): Define at the end of file (in case not defined
+       previously).
+
+2011-06-07  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/generalize.h: Reformat code.
+       * src/atomic_ops/generalize.h (AO_test_and_set_acquire): Fix
+       return type.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h (AO_test_and_set): Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set): Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set): Add
+       a comment (about SWP instruction).
+
+2011-06-06  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_THUMB_GO_ARM,
+       AO_THUMB_RESTORE_MODE): Use single-digit labels (to workaround
+       a bug in GCC v4.2.1 which reports "garbage following instruction"
+       otherwise).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_compare_and_swap): Use "IT"
+       instruction only for Thumb-2 mode.
+
+2011-06-06  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_THUMB_GO_ARM,
+       AO_THUMB_RESTORE_MODE, AO_THUMB_SWITCH_CLOBBERS): Define as empty
+       for Thumb-2 mode.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_store, AO_test_and_set,
+       AO_fetch_and_add, AO_fetch_and_add1, AO_fetch_and_sub1,
+       AO_compare_and_swap, AO_compare_double_and_swap_double): Remove
+       unnecessary "memory" keyword from the list of clobbered registers
+       (revert part of the previous commit).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_compare_and_swap): Add
+       a comment for "IT" instruction.
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double): Don't define on the
+       architectures where unimplemented; add a comment; replace return
+       (in the loop) statement with break.
+
+2011-06-06  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_THUMB_GO_ARM,
+       AO_THUMB_RESTORE_MODE, AO_THUMB_SWITCH_CLOBBERS): Define new
+       macro (to switch temporarily CPU mode to ARM in inline assembler
+       if compiling in the Thumb mode and to restore it back on leave).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_nop_full, AO_store,
+       AO_test_and_set, AO_fetch_and_add, AO_fetch_and_add1,
+       AO_fetch_and_sub1, AO_compare_and_swap, AO_test_and_set_full):
+       Enable compilation in the Thumb mode (use AO_THUMB_GO_ARM,
+       AO_THUMB_RESTORE_MODE and AO_THUMB_SWITCH_CLOBBERS macros).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_store, AO_test_and_set,
+       AO_fetch_and_add, AO_fetch_and_add1, AO_fetch_and_sub1,
+       AO_compare_and_swap, AO_compare_double_and_swap_double): Add
+       "memory" to the list of clobbered registers.
+
+2011-06-06  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h: Reformat code.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_nop_full,
+       AO_test_and_set_full): Add assembler comment containing the
+       function name.
+
+2011-06-03  Ivan Maidanski  <ivmai@mail.ru>
+
+       * tests/test_malloc.c (run_one_test): Test AO_malloc() result
+       (if out of memory then print the message and abort).
+       * tests/test_stack.c (add_elements): Ditto.
+
+2011-06-03  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/generalize.h (AO_HAVE_or_full): Add missing
+       definition.
+       * src/atomic_ops/sysdeps/ordered_except_wr.h (AO_HAVE_nop_write):
+       Fix macro name.
+       * src/atomic_ops/sysdeps/read_ordered.h (AO_HAVE_nop_read): Ditto.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_HAVE_store_release):
+       Ditto.
+
+2011-06-03  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/generalize-small.template
+       (AO_HAVE_XSIZE_fetch_and_add_full): Add missing definition.
+       * src/atomic_ops/generalize-small.template: Reformat code.
+       * src/atomic_ops/generalize-small.h: Regenerate.
+
+2011-06-03  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/aligned_atomic_load_store.h: Remove
+       blank line between AO_func and AO_HAVE_func definitions.
+       * src/atomic_ops/sysdeps/atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/char_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/generic_pthread.h: Ditto.
+       * src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/int_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/ordered.h: Ditto.
+       * src/atomic_ops/sysdeps/ordered_except_wr.h: Ditto.
+       * src/atomic_ops/sysdeps/read_ordered.h: Ditto.
+       * src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/short_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/alpha.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/cris.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/hppa.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/ia64.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/m68k.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/mips.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/s390.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/sparc.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/hpc/hppa.h: Ditto.
+       * src/atomic_ops/sysdeps/hpc/ia64.h: Ditto.
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/sunc/sparc.h: Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/aligned_atomic_load_store.h: Reformat
+       comment.
+       * src/atomic_ops/sysdeps/atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/char_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/int_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/ordered.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Ditto.
+       * src/atomic_ops/sysdeps/test_and_set_t_is_char.h: Remove file
+       tail blank lines.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set_full): Don't
+       define for ARMv2.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_load_acquire,
+       AO_test_and_set, AO_compare_and_swap): Merge adjacent definitions.
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h (AO_HAVE_store_release):
+       Define.
+       * src/atomic_ops/sysdeps/sunc/sparc.h: Expand all tabs to spaces;
+       remove trailing spaces at EOLn.
+
+2011-06-02  Ivan Maidanski  <ivmai@mail.ru>
+
+       * tests/test_malloc.c (main): Remove unused "exper_n" local
+       variable.
+       * tests/test_stack.c (run_one_test): Remove unused "aux" local
+       variable.
+
+2011-06-01  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double,
+       AO_HAVE_compare_double_and_swap_double): Define only starting from
+       ARMv6K.
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double): Fix function name in
+       assembler code; replace while (1) loop with "do-while".
+
+2011-06-01  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/sunc/x86.h (AO_test_and_set_full):
+       Specify "%b0" (instead of "%0") in "xchg" instruction (to
+       workaround a bug in Sun C 5.11).
+       * src/atomic_ops/sysdeps/sunc/x86_64.h (AO_test_and_set_full):
+       Ditto.
+
+2011-06-01  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops_malloc.c (AO_malloc_enable_mmap): Workaround for
+       Sun C compiler (call "release" variant of AO_store).
+
+2011-06-01  Ivan Maidanski  <ivmai@mail.ru>
+
+       * configure.ac (_PTHREADS): New template (used for NetBSD).
+       * configure.ac (THREADDLLIBS): New macro.
+       * tests/Makefile.am (test_atomic_LDADD, test_stack_LDADD,
+       test_atomic_pthreads_LDADD, test_malloc_LDADD): Use THREADDLLIBS
+       instead of "-lpthread".
+       * configure: Regenerate.
+       * Makefile.in: Ditto.
+       * doc/Makefile.in: Ditto.
+       * src/Makefile.in: Ditto.
+       * src/atomic_ops/Makefile.in: Ditto.
+       * src/atomic_ops/sysdeps/Makefile.in: Ditto.
+       * src/config.h.in: Ditto.
+       * tests/Makefile.in: Ditto.
+
+2011-05-30  Ivan Maidanski  <ivmai@mail.ru>
+
+       * configure.ac (PIC): Add workaround for GCC v3.4.6 which does not
+       define the corresponding macro.
+       * configure.ac: Don't check for GCC twice.
+       * configure: Regenerate.
+       * tests/test_malloc.c (DEFAULT_NTHREADS): New macro.
+       * tests/test_malloc.c (run_one_test): Refine printed message (in
+       case of HAVE_MMAP).
+       * tests/test_malloc.c (main): Use DEFAULT_NTHREADS.
+       * tests/test_stack.c (main): Cast AO_stack_pop() returned pointer.
+       * src/atomic_ops_malloc.c (USE_MMAP_ANON, GC_MMAP_FLAGS,
+       OPT_MAP_ANON): New macro.
+       * src/atomic_ops_malloc.c (get_mmaped): Pass -1 (instead of 0) as
+       file descriptor to mmap() if MAP_ANONYMOUS (same as for MAP_ANON).
+       * src/atomic_ops_malloc.c (get_mmaped): Use USE_MMAP_ANON,
+       GC_MMAP_FLAGS and OPT_MAP_ANON macros; reformat code; check open()
+       returned value.
+
+2011-05-11  Ivan Maidanski  <ivmai@mail.ru>
+
+       * tests/test_malloc.c: Expand all tabs to spaces; remove trailing
+       spaces at EOLn.
+       * tests/test_malloc.c (LENGTH, LARGE): Rename to LIST_LENGTH and
+       LARGE_OBJ_SIZE, respectively.
+       * tests/test_malloc.c (MAX_NTHREADS, N_REVERSALS, LIST_LENGTH,
+       LARGE_OBJ_SIZE): Do not define unless undefined.
+       * tests/test_malloc.c (run_one_test): Recognize DEBUG_RUN_ONE_TEST
+       macro.
+
+2011-05-10  Ivan Maidanski  <ivmai@mail.ru>
+
+       * tests/Makefile.am (EXTRA_DIST): Add list_atomic.c; update
+       comment.
+       * tests/Makefile.am (CLEANFILES): Remove test_atomic_include.h,
+       list_atomic.c.
+       * tests/Makefile.am: Remove trailing spaces at EOLn.
+       * tests/Makefile.in: Regenerate.
+
+2011-05-10  Ivan Maidanski  <ivmai@mail.ru>
+
+       * tests/test_stack.c (MAX_NTHREADS, N_EXPERIMENTS): Do not define
+       unless undefined.
+       * tests/test_stack.c: Expand all tabs to spaces.
+       * tests/test_atomic_include.h: Ditto.
+       * tests/test_stack.c (main): Free pop'ed elements.
+       * tests/test_atomic_include.h (test_atomic, test_atomic_release,
+       test_atomic_acquire, test_atomic_read, test_atomic_write,
+       test_atomic_full, test_atomic_release_write,
+       test_atomic_acquire_read): Remove prototype.
+
+2011-04-22  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/ia64.h (AO_MASK): Add "volatile" for
+       asm; remove redundant trailing ';'.
+
+2011-04-11  Ivan Maidanski  <ivmai@mail.ru> (really Jim Meyering)
+
+       * doc/README.txt: Remove doubled words in comments.
+
+2011-03-18  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h: Test for all the known pre-v6
+       ARM chips instead of all the currently existing v6+ ones.
+
+2011-03-13  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/emul_cas.h: Fix a typo in a comment;
+       expand all tabs to spaces.
+       * src/atomic_ops/sysdeps/gcc/x86.h (AO_test_and_set_full):
+       Recognize AO_XCHGB_RET_WORD new macro (to workaround a bug).
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_test_and_set_full):
+       Ditto.
+
+2011-02-19  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops.c: Include sys/time.h (to get timespec) for NaCl.
+       * src/atomic_ops_malloc.c (msb): Do the shift by 32 only once (in
+       a conditional expression) to prevent a compiler warning.
+       * src/atomic_ops_malloc.c: Expand all tabs to spaces; remove
+       trailing spaces at EOLn.
+
+2011-02-19  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops.c: Explicitly define AO_USE_NO_SIGNALS and
+       AO_USE_NANOSLEEP for NaCl.
+
+2011-02-19  Ivan Maidanski  <ivmai@mail.ru>
+
+       * aclocal.m4: Regenerate (by autoreconf -vif using autoconf-2.68,
+       automake-1.11.1 and libtool-2.4).
+       * configure: Ditto.
+
+2011-02-09  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/atomic_ops.c (AO_USE_NO_SIGNALS, AO_USE_NANOSLEEP): New
+       macros.
+       * src/atomic_ops.c (AO_USE_WIN32_PTHREADS): Imply
+       AO_USE_NO_SIGNALS.
+       * src/atomic_ops.c: Don't include signal.h if AO_USE_NO_SIGNALS.
+       * src/atomic_ops.c: Include time.h if AO_USE_NANOSLEEP.
+       * src/atomic_ops.c (AO_locks, AO_pause): Reformat the code.
+       * src/atomic_ops.c (AO_pause): Use nanosleep() if
+       AO_USE_NANOSLEEP.
+       * src/atomic_ops.c (all_sigs, initialized,
+       AO_compare_and_swap_emulation,
+       AO_compare_double_and_swap_double_emulation): Use
+       AO_USE_NO_SIGNALS instead of AO_USE_WIN32_PTHREADS.
+
+2011-01-07  Ivan Maidanski  <ivmai@mail.ru>
+
+       * src/.cvsignore: Add more auto-generated files.
+       * tests/.cvsignore: Ditto.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h (AO_nop_full, AO_store,
+       AO_compare_double_and_swap_double): Reformat code.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_nop_full,
+       AO_compare_double_and_swap_double): Ditto.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h (AO_compare_and_swap):
+       Produce "it eq" instruction only for Thumb mode.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_compare_and_swap): Ditto.
+
+2010-11-23  Ivan Maidanski <ivmai@mail.ru> (really Michael Hope)
+
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h (AO_compare_and_swap):
+       Insert "it eq" just before "strexeq" (required for Thumb-2 mode,
+       ignored in ARM mode).
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_compare_and_swap): Ditto.
+
+2010-09-15  Ivan Maidanski <ivmai@mail.ru> (with input from Gregory Farnum)
+
+       * src/atomic_ops.h: Include armcc/arm_v6.h if __ARMCC__.
+       * src/atomic_ops.h: Include ibmc/powerpc.h if __IBMC__.
+       * src/atomic_ops.h: Define AO_GENERALIZE_TWICE if msftc/arm.h is
+       included.
+       * src/atomic_ops.h: Define AO_GENERALIZE_TWICE if AO_CAN_EMUL_CAS
+       is defined but emul_cas.h has not been included.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Fix a typo.
+
+2010-08-14  Ivan Maidanski <ivmai@mail.ru>
+
+       * aclocal.m4: Regenerate (by autoreconf -vif using autoconf-2.67,
+       automake-1.11.1 and libtool-2.2.8).
+       * configure: Ditto.
+
+2010-08-14  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h: Replace C++ style comment
+       with ANSI C one.
+
+2010-05-30  Ivan Maidanski <ivmai@mail.ru> (really Bradley Smith)
+
+       * src/atomic_ops/sysdeps/gcc/avr32.h (AO_test_and_set): Use
+       "register long" (instead of "int") for "ret" variable.
+       * src/atomic_ops/sysdeps/gcc/avr32.h (AO_test_and_set): Replace
+       with AO_test_and_set_full (same for AO_HAVE_test_and_set).
+       * src/atomic_ops/sysdeps/gcc/avr32.h (AO_compare_and_swap_full):
+       New function implemented.
+
+2010-05-22  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/Makefile.am (nobase_sysdep_HEADERS):
+       Add "gcc/avr32.h".
+       * src/atomic_ops/sysdeps/Makefile.in: Regenerate.
+
+2010-05-21  Ivan Maidanski <ivmai@mail.ru> (really Bradley Smith)
+
+       * src/atomic_ops.h: Recognize __avr32__ (include gcc/avr32.h).
+       * src/atomic_ops/sysdeps/gcc/avr32.h: New file.
+
+2010-04-29  Ivan Maidanski <ivmai@mail.ru>
+
+       * doc/README_malloc.txt: Fix a typo.
+       * doc/README_stack.txt: Ditto.
+
+2010-02-25  Ivan Maidanski <ivmai@mail.ru> (really Bruce Mitchener)
+
+       * .cvsignore: New file.
+       * doc/.cvsignore: Ditto.
+       * src/.cvsignore: Ditto.
+       * src/atomic_ops/.cvsignore: Ditto.
+       * src/atomic_ops/sysdeps/.cvsignore: Ditto.
+       * tests/.cvsignore: Ditto.
+
+2010-02-19  Ivan Maidanski <ivmai@mail.ru> (mostly really Patrick Marlier)
+
+       * src/atomic_ops/sysdeps/gcc/x86.h (AO_compare_and_swap_full):
+       Use __sync_bool_compare_and_swap() if AO_USE_SYNC_CAS_BUILTIN.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_compare_and_swap_full):
+       Ditto.
+       * src/atomic_ops.h (AO_USE_SYNC_CAS_BUILTIN): New macro defined
+       if GCC v4.2+ or Intel compiler v11.1+ (only for amd64).
+       * src/atomic_ops.h: Include GCC-specific sysdeps files for Intel
+       compiler in GCC compatible mode (only for x86 and amd64).
+
+2010-02-18  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_nop_full): Don't check
+       for AO_USE_PENTIUM4_INSTRS (since "mfence" (SSE2) is supported on
+       all x86_64/amd64 chips); remove the comment.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_nop_full): Define only
+       if AO_ASM_X64_AVAILABLE.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_compare_and_swap_full):
+       Use built-in __sync_bool_compare_and_swap() if GCC v4.2+.
+
+2010-02-17  Ivan Maidanski <ivmai@mail.ru> (really Patrick Marlier)
+
+       * src/atomic_ops/sysdeps/gcc/x86.h (AO_compare_and_swap_full,
+       AO_compare_double_and_swap_double_full): Use EAX for the result
+       since cmpxchg clobbers it.
+       * src/atomic_ops/sysdeps/sunc/x86.h (AO_compare_and_swap_full,
+       AO_compare_double_and_swap_double_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_compare_and_swap_full,
+       AO_compare_double_and_swap_double_full): Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86_64.h (AO_compare_and_swap_full,
+       AO_compare_double_and_swap_double_full): Ditto.
+
+2010-02-04  Ivan Maidanski <ivmai@mail.ru>
+
+       * doc/Makefile.in: Regenerate.
+
+2010-02-04  Ivan Maidanski <ivmai@mail.ru> (really Ian Wienand)
+
+       * doc/Makefile.am: Remove duplicate file in the list.
+
+2010-02-03  Ivan Maidanski <ivmai@mail.ru>
+
+       * ChangeLog: Fix some typos.
+
+2010-02-03  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops_stack.c (AO_stack_push_explicit_aux_release):
+       Define "i" variable only if used (to suppress a compiler warning).
+
+2010-02-02  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/sunc/x86.h (AO_test_and_set_full): Fix
+       "xchg" data size (remove "l" suffix).
+       * src/atomic_ops/sysdeps/sunc/x86_64.h (AO_test_and_set_full):
+       Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86_64.h (AO_test_and_set_full): Use
+       AO_TS_t for oldval.
+       * src/atomic_ops/sysdeps/sunc/x86.h
+       (AO_compare_double_and_swap_double_full,
+       AO_HAVE_compare_double_and_swap_double_full): Comment out (since
+       not tested, might be wrong, and tickles a bug in some Sun CC
+       versions; besides, __PIC__ macro is never predefined by Sun CC).
+
+2010-01-29  Ivan Maidanski <ivmai@mail.ru>
+
+       * INSTALL: Regenerate (by autoreconf -vif using libtool-2.2.6b,
+       automake-1.11.1, autoconf-2.65).
+       * Makefile.in: Ditto.
+       * aclocal.m4: Ditto.
+       * compile: Ditto.
+       * config.guess: Ditto.
+       * config.sub: Ditto.
+       * configure: Ditto.
+       * depcomp: Ditto.
+       * install-sh: Ditto.
+       * missing: Ditto.
+       * mkinstalldirs: Ditto.
+       * doc/Makefile.in: Ditto.
+       * src/Makefile.in: Ditto.
+       * src/atomic_ops/Makefile.in: Ditto.
+       * src/atomic_ops/sysdeps/Makefile.in: Ditto.
+       * src/config.h.in: Ditto.
+       * tests/Makefile.in: Ditto.
+
+2009-12-19  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h (AO_lwsync): Redirect to
+       AO_sync() if __NO_LWSYNC__ (same as for gcc/powerpc.h).
+
+2009-12-17  Ivan Maidanski <ivmai@mail.ru> (really Emmanuel Stapf)
+
+       * src/atomic_ops.h: Recognize _M_X64 (as an alias for _AMD64_).
+
+2009-12-04  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac, README: Change to version 7.2alpha5.
+       * configure: Regenerate.
+
+[7.2alpha4]
+
+2009-12-02  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac, README: Change to version 7.2alpha4.
+       * configure: Regenerate.
+
+2009-12-01  Ivan Maidanski <ivmai@mail.ru>
+
+       * configure.ac, README: Change to version 1.3alpha1.
+       * configure: Regenerate.
+
+2009-11-21  Ivan Maidanski <ivmai@mail.ru> (really Daniel R. Grayson)
+
+       * configure.ac (AC_CONFIG_COMMANDS): Quote PICFLAG, CC, DEFS
+       values.
+       * configure: Regenerate.
+
+2009-10-06  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/sh.h: Remove commented out AO_TS_SET
+       redefinition.
+
+2009-10-05  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/Makefile.in: Regenerate.
+
+2009-10-05  Ivan Maidanski <ivmai@mail.ru> (really Takashi YOSHII)
+
+       * src/atomic_ops/sysdeps/gcc/sh.h: New file.
+       * src/atomic_ops.h: Include gcc/sh.h if __arm__.
+       * src/atomic_ops/sysdeps/Makefile.am: Add gcc/sh.h entry.
+
+2009-10-02  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/Makefile.am: Add armcc/arm_v6.h,
+       msftc/arm.h, msftc/common32_defs.h, sunc/x86.h sunc/x86_64.h
+       entries; order all entries alphabetically.
+       * src/atomic_ops/sysdeps/Makefile.in: Regenerate.
+
+2009-10-01  Ivan Maidanski <ivmai@mail.ru>
+
+       * aclocal.m4: Regenerate (by autoreconf -vif using libtool-2.2,
+       automake-1.10.2, autoconf-2.64).
+       * INSTALL: Ditto.
+       * Makefile.in: Ditto.
+       * aclocal.m4: Ditto.
+       * config.guess: Ditto.
+       * config.sub: Ditto.
+       * configure: Ditto.
+       * depcomp: Ditto.
+       * install-sh: Ditto.
+       * missing: Ditto.
+       * mkinstalldirs: Ditto.
+       * doc/Makefile.in: Ditto.
+       * src/config.h.in: Ditto.
+       * src/Makefile.in: Ditto.
+       * src/atomic_ops/Makefile.in: Ditto.
+       * src/atomic_ops/sysdeps/Makefile.in: Ditto.
+       * tests/Makefile.in: Ditto.
+
+2009-10-01  Ivan Maidanski <ivmai@mail.ru>
+
+       * src/atomic_ops/sysdeps/gcc/x86.h: Remove spaces preceding '#'
+       for the preprocessor directives.
+       * src/atomic_ops/sysdeps/sunc/x86.h: Ditto.
+
+2009-09-30  Ivan Maidanski <ivmai@mail.ru> (really Petter Urkedal)
+
+       * README: Move notes from the hand-edited part of INSTALL which
+       was overwritten by Automake recently.
+
+2009-09-26  Ivan Maidanski <ivmai@mail.ru>
+
+       * aclocal.m4: Regenerate (by autoreconf -vif).
+       * config.guess: Ditto.
+       * config.sub: Ditto.
+       * configure: Ditto.
+       * INSTALL: Ditto.
+       * Makefile.in: Ditto.
+       * doc/Makefile.in: Ditto.
+       * src/config.h.in: Ditto.
+       * src/Makefile.in: Ditto.
+       * src/atomic_ops/Makefile.in: Ditto.
+       * src/atomic_ops/sysdeps/Makefile.in: Ditto.
+       * tests/Makefile.in: Ditto.
+
+2009-09-25  Ivan Maidanski <ivmai@mail.ru> (really Petter Urkedal)
+
+       * configure.ac: Replace AC_PROG_CC with AM_PROG_CC_C_O.
+
+2009-09-16  Ivan Maidanski <ivmai@mail.ru>
+
+       * ChangeLog: Remove trailing spaces at EOLn.
+       * doc/README.txt: Expand all tabs to spaces; remove trailing
+       spaces at EOLn; remove multiple trailing blank lines.
+       * src/atomic_ops.c: Ditto.
+       * src/atomic_ops.h: Ditto.
+       * src/atomic_ops/generalize-small.h: Ditto.
+       * src/atomic_ops/generalize.h: Ditto.
+       * src/atomic_ops/sysdeps/acquire_release_volatile.h: Ditto.
+       * src/atomic_ops/sysdeps/aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/all_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/all_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/ao_t_is_int.h: Ditto.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h: Ditto.
+       * src/atomic_ops/sysdeps/atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/char_acquire_release_volatile.h: Ditto.
+       * src/atomic_ops/sysdeps/char_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/alpha.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/hppa.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/ia64.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/m68k.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/mips.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/s390.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/sparc.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/generic_pthread.h: Ditto.
+       * src/atomic_ops/sysdeps/hpc/hppa.h: Ditto.
+       * src/atomic_ops/sysdeps/hpc/ia64.h: Ditto.
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h: Ditto.
+       * src/atomic_ops/sysdeps/icc/ia64.h: Ditto.
+       * src/atomic_ops/sysdeps/int_acquire_release_volatile.h: Ditto.
+       * src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/int_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/arm.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/ordered.h: Ditto.
+       * src/atomic_ops/sysdeps/ordered_except_wr.h: Ditto.
+       * src/atomic_ops/sysdeps/read_ordered.h: Ditto.
+       * src/atomic_ops/sysdeps/short_acquire_release_volatile.h: Ditto.
+       * src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/short_atomic_load_store.h: Ditto.
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h: Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86.h: Ditto.
+       * src/atomic_ops/sysdeps/sunc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/test_and_set_t_is_ao_t.h: Ditto.
+       * src/atomic_ops_stack.c: Ditto.
+       * src/atomic_ops_stack.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Replace non-ASCII quotes in a
+       comment.
+       * src/atomic_ops/sysdeps/gcc/mips.h: Use Unix-style EOLn.
+
+2009-09-10  Ivan Maidanski <ivmai@mail.ru>
+       (ivmai123.diff)
+
+       * src/atomic_ops/sysdeps/msftc/arm.h: Add FIXME for InterlockedOps
+       (regarding memory barrier).
+       * src/atomic_ops/sysdeps/msftc/arm.h: Don't recognize
+       AO_ASSUME_ARM_ARCH6 anymore; check for _M_ARM >= 6 instead.
+       * src/atomic_ops/sysdeps/msftc/arm.h (AO_nop_full,
+       AO_test_and_set): Replace FIXME with the comment saying it is
+       emulated (in generalize.h); include test_and_set_t_is_ao_t.h.
+       * src/atomic_ops/sysdeps/msftc/arm.h (AO_store_full): Implement
+       using InterlockedCompareExchange() (assuming the latter has a full
+       mbar) for ARMv6+.
+       * src/atomic_ops/sysdeps/msftc/arm.h: Include
+       all_atomic_load_store.h and test_and_set_t_is_ao_t.h for the case
+       of pre-ARMv6; add the comment.
+
+2009-09-10  Ivan Maidanski <ivmai@mail.ru>
+       (ivmai122.diff)
+
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h
+       (AO_compare_double_and_swap_double): Replace false/true with 0/1.
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double): Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Recognize more ARMv6+
+       predefined macros (6J, 6ZK, 7A, 7M, 7R).
+       * src/atomic_ops/sysdeps/gcc/arm.h
+       (AO_compare_double_and_swap_double): Add "cc" clobber to asm.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_HAVE_load_acquire):
+       Correct the name (convert from the lower case).
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h (AO_HAVE_load_acquire):
+       Ditto.
+       * src/atomic_ops/sysdeps/ibmc/powerpc.h (AO_test_and_set,
+       AO_compare_and_swap): Comment out unimplemented code (and the
+       corresponding macros); add FIXME.
+       * src/atomic_ops.c: Recognize AO_USE_WIN32_PTHREADS overriding
+       _MSC_VER and __MINGW32__ predefined macros (useful for WinCE with
+       pthreads-w32 library); don't include signal.h, sys/time.h,
+       sys/select.h in this case; include windows.h instead.
+       * src/atomic_ops.c (AO_pause): Use Sleep() in case of
+       AO_USE_WIN32_PTHREADS (instead of select()).
+       * src/atomic_ops.c (all_sigs, initialized): Don't define in case
+       of AO_USE_WIN32_PTHREADS.
+       * src/atomic_ops.c (AO_compare_and_swap_emulation,
+       AO_compare_double_and_swap_double_emulation): Don't deal with
+       signals in case of AO_USE_WIN32_PTHREADS.
+
+2009-09-10  Ivan Maidanski <ivmai@mail.ru>
+       (diff110)
+
+       * src/atomic_ops/sysdeps/msftc/arm.h: New file (initial support
+       for ARM family).
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h: New file.
+       * src/atomic_ops/sysdeps/msftc/arm.h (AO_ASSUME_ARM_ARCH6): New
+       macro.
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h
+       (AO_USE_INTERLOCKED_INTRINSICS): Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Move "Interlocked"
+       declarations to common32_defs.h.
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h
+       (AO_INTERLOCKED_VOLATILE): New macro defined (used by
+       Interlocked-based primitives) for compatibility with older VC++.
+       * src/atomic_ops/sysdeps/msftc/common32_defs.h: Don't include
+       missing <intrin.h> if WinCE target.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Include common32_defs.h
+       (define AO_USE_INTERLOCKED_INTRINSICS unconditionally).
+       * src/atomic_ops/sysdeps/msftc/x86.h (AO_fetch_and_add_full,
+       AO_fetch_and_add1_full, AO_fetch_and_sub1_full,
+       AO_compare_and_swap_full): Move arch-independent primitives to
+       common32_defs.h.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Remove comment about i486 or
+       better CPU (since Interlocked Add and Xchg primitives are available
+       on any 32-bit CPU).
+       * src/atomic_ops.h: Include msftc/x86.h even if _M_IX86 is less than
+       400 (for i80386).
+       * src/atomic_ops.h: Include msftc/x86.h if "x86" defined (for WinCE
+       on x86).
+       * src/atomic_ops.h: Include msftc/arm.h if ARM target (for WinCE).
+
+2009-09-10  Ivan Maidanski <ivmai@mail.ru>
+       (diff109_cvs)
+
+       * src/atomic_ops/sysdeps/msftc/x86.h: Fix comments (prefix
+       ASSUME_WINDOWS98 with "AO_").
+       * src/atomic_ops/sysdeps/msftc/x86.h: Prefix ASSUME_VISTA macro with
+       "AO_".
+       * src/atomic_ops/sysdeps/msftc/x86.h (AO_nop_full): Replace
+       K&R-style function definition with ANSI C one.
+       * src/atomic_ops/sysdeps/msftc/x86.h (AO_test_and_set_full):
+       Replace AO_TS_SET with its value 0xff (some compilers does not like
+       C enum consts inside inline assembler).
+       * src/atomic_ops/sysdeps/msftc/x86.h (AO_test_and_set_full): Add
+       comment about "missing return value" warning.
+       * src/atomic_ops/sysdeps/msftc/x86.h
+       (AO_OLD_STYLE_INTERLOCKED_COMPARE_EXCHANGE): New macro.
+       * src/atomic_ops/sysdeps/msftc/x86.h (AO_compare_and_swap_full): Use
+       _InterlockedCompareExchange() with args and result of PVOID type
+       if AO_OLD_STYLE_INTERLOCKED_COMPARE_EXCHANGE is defined (mostly for
+       DigitalMars compiler support).
+       * src/atomic_ops/sysdeps/msftc/x86.h
+       (AO_compare_double_and_swap_double_full): Swap all "val1" and "val2"
+       variables ("val1" is the lowest part of AO_double_t).
+       * src/atomic_ops/sysdeps/msftc/x86.h
+       (AO_compare_double_and_swap_double_full): Rename to
+       AO_double_compare_and_swap_full (as it has 3 args).
+       * src/atomic_ops/sysdeps/msftc/x86.h: Replace C++ style comment
+       with ANSI C one.
+
+2009-09-10  Ivan Maidanski <ivmai@mail.ru>
+       (diff108_cvs)
+
+       * src/atomic_ops/sysdeps/gcc/x86_64.h: Remove comments about i486
+       and 32-bit WinChips.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_nop_full): Replace
+       K&R-style function definition with ANSI C one.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h
+       (AO_compare_double_and_swap_double_full): Fix comment.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h
+       (AO_compare_double_and_swap_double_full): Swap all "val1" and "val2"
+       variables ("val1" is the lowest part of AO_double_t).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h
+       (AO_compare_double_and_swap_double_full): Ditto.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Remove comment about
+       ASSUME_WINDOWS98.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_ASM_X64_AVAILABLE): New
+       macro.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Include
+       "test_and_set_t_is_char.h" if AO_ASM_X64_AVAILABLE (same as in
+       x86_64.h for gcc); remove FIXME (for re-implement test-and-set).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Include
+       "standard_ao_double_t.h" (same as in x86_64.h for gcc).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Add comment for include
+       <intrin.h> assuming at least VC++ v8.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Remove _Interlocked
+       prototypes (since they are always declared in intrin.h).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_nop_full): Move its
+       definition below CAS primitive (to textually group all asm-based
+       primitives together).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h (AO_test_and_set_full):
+       Implement for AO_ASM_X64_AVAILABLE case.
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: Remove AO_CASDOUBLE_MISSING
+       macro (replaced with AO_ASM_X64_AVAILABLE).
+       * src/atomic_ops/sysdeps/msftc/x86_64.h
+       (AO_compare_double_and_swap_double_full): Add intrinsic-based
+       implementation for VC++ v9+.
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h: Include
+       <xmmintrin.h> (and use "__m128" type) if _WIN64.
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h
+       (AO_HAVE_DOUBLE_PTR_STORAGE): Define it always (as
+       "double_ptr_storage" is defined for all cases).
+
+2009-09-09  Hans Boehm <Hans.Boehm@hp.com> (Really mostly Patrick Marlier)
+
+       * src/atomic_ops/sysdeps/gcc/sparc.h (NO_SPARC_V9):
+       Renamed to AO_NO_SPARC_V9.
+
+2009-09-01  Hans Boehm <Hans.Boehm@hp.com> (Really mostly Patrick Marlier)
+
+       * src/atomic_ops/sysdeps/gcc/sparc.h (AO_test_and_set_full): Use
+       AO_TS_VAL_t for "oldval" (for 64-bit support).
+       * src/atomic_ops/sysdeps/gcc/sparc.h (AO_compare_and_swap_full):
+       New function implemented.
+
+2009-08-12  Hans Boehm <Hans.Boehm@hp.com> (Really Ivan Maidanski)
+       (diff107_cvs, resembling diff78 and diff88_cvs)
+
+       * src/atomic_ops/sysdeps/sunc/x86.h: New file.
+       * src/atomic_ops/sysdeps/sunc/x86_64.h: Ditto.
+       * src/atomic_ops.h (AO_INLINE): Support inlining for DigitalMars,
+       Watcom, Sun C.
+       * src/atomic_ops.h (AO_compiler_barrier): Use intrinsic-based
+       implementation for VC++ v8+ (include <intrin.h> before it unless
+       WinCE target); use asm-based barrier implementation for Borland,
+       DigitalMars and Watcom.
+       * src/atomic_ops.h: Fix comment (for x86_64).
+       * src/atomic_ops.h: Include specialized x86.h and x86_64.h arch
+       headers for Sun C (if not AO_USE_PTHREAD_DEFS).
+       * src/atomic_ops.h: Include VC-specific arch headers for Borland,
+       DigitalMars and Watcom (Win32 target only).
+
+2009-05-27  Hans Boehm <Hans.Boehm@hp.com> (Really Ivan Maidanski)
+       (diff87_cvs, resembling diff29, diff68, diff78 partly)
+
+       * doc/README.txt: Remove outdated info about Windows support.
+       * src/atomic_ops/generalize.h (AO_nop_full): Replace
+       K&R-style function definition with ANSI C one.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/alpha.h (AO_nop_full, AO_nop_write):
+       Ditto.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/ia64.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/mips.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_nop_full, AO_lwsync): Ditto.
+       * src/atomic_ops/sysdeps/gcc/x86.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/generic_pthread.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/hpc/ia64.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/icc/ia64.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/ordered.h (AO_nop_full): Ditto.
+       * src/atomic_ops/sysdeps/ordered_except_wr.h (AO_nop_write): Ditto.
+       * src/atomic_ops/sysdeps/read_ordered.h (AO_nop_read): Ditto.
+       * src/atomic_ops/sysdeps/test_and_set_t_is_ao_t.h (AO_TS_val): Fix
+       comment.
+
+2009-02-24  Hans Boehm <Hans.Boehm@hp.com> (Really primarily Earl Chew)
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Add index,
+       update modifiers to asms, refine clobbers to "cr0", use
+       cr0 instead of cr7, add explicit AO_fetch_and_add,
+       add UNTESTED 64 bit support.
+
+2008-11-10  Hans Boehm <Hans.Boehm@hp.com> (Really Joerg Wagner)
+
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h: Compute
+       AO_compare_and_swap value differently, add
+       AO_compare_double_and_swap_double, some indentation fixes.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Make gcc asm code more
+       robust and minimize clobbers, Add AO_compare_double_and_swap_double.
+
+2008-11-06  Hans Boehm <Hans.Boehm@hp.com>
+
+       * INSTALL: Add some platform-specific documentation.
+       * src/Makefile.msft: Fix copyright notice.
+
+2008-10-21  Hans Boehm <Hans.Boehm@hp.com>  (really Ivan Maidanski)
+
+       * src/atomic_ops/sysdeps/aligned_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/all_aligned_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/all_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/char_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Fix comments.
+       * src/atomic_ops/sysdeps/gcc/x86.h: Fix comments.
+       * src/atomic_ops/sysdeps/gcc/x86_64.h: Fix comments.
+       * src/atomic_ops/sysdeps/hpc/hppa.h: Fix comments.
+       * src/atomic_ops/sysdeps/hpc/ia64.h: Fix comments.
+       * src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/int_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h: Fix comments.
+       * src/atomic_ops/sysdeps/short_atomic_load_store.h: Fix comments.
+       * src/atomic_ops.c: Fix comments.
+       * src/atomic_ops.h: Fix comments.
+       * src/atomic_ops_stack.c: Fix comments.
+       * src/atomic_ops_stack.h: Fix comments.
+
+2008-10-20  Hans Boehm <Hans.Boehm@hp.com>  (really Andrew Agno)
+
+       * src/atomic_ops/sysdeps/gcc/x86_64.h (AO_int_fetch_and_add_full):
+       fix return type.
+
+2008-08-21  Hans Boehm <Hans.Boehm@hp.com>
+
+       * config.guess, config.sub, configure: Regenerate/replace.
+       Use autoconf 2.61, automake 1.9.6.
+
+2008-08-19  Hans Boehm <Hans.Boehm@hp.com> (really Thiemo Seufer)
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Add %U1 (update) to lwz
+       instruction.
+
+2008-08-19  Hans Boehm <Hans.Boehm@hp.com> (really Sebastian Siewior)
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Consider __NO_LWSYNC__.
+
+2008-07-24  Hans Boehm <Hans.Boehm@hp.com> (really Ivan Maidanski)
+
+       * src/atomic_ops/sysdeps/ao_t_is_int.h, src/atomic_ops.h:
+       Add parentheses around addr arg for various functions.
+
+2008-07-18  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h:
+       Add const to first parameter of load calls (forgot one).
+
+2008-07-18  Hans Boehm <Hans.Boehm@hp.com>
+
+       * doc/README.txt, src/atomic_ops/generalize.h,
+       src/atomic_ops/generalize-small.template,
+       src/atomic_ops/generalize-small.h,
+       src/atomic_ops/sysdeps/acquire_release_volatile.h,
+       src/atomic_ops/sysdeps/char_acquire_release_volatile.h,
+       src/atomic_ops/sysdeps/int_acquire_release_volatile.h,
+       src/atomic_ops/sysdeps/short_acquire_release_volatile.h,
+       src/atomic_ops/sysdeps/aligned_atomic_load_store.h,
+       src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h,
+       src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h,
+       src/atomic_ops/sysdeps/ao_t_is_int.h,
+       src/atomic_ops/sysdeps/atomic_load_store.h,
+       src/atomic_ops/sysdeps/char_atomic_load_store.h,
+       src/atomic_ops/sysdeps/int_atomic_load_store.h,
+       src/atomic_ops/sysdeps/short_atomic_load_store.h,
+       src/atomic_ops/sysdeps/generic_pthread.h,
+       src/atomic_ops/sysdeps/read_ordered.h,
+       src/atomic_ops/sysdeps/sysdeps/armcc/arm_v6.h,
+       src/atomic_ops/sysdeps/gcc/arm.h,
+       src/atomic_ops/sysdeps/icc/ia64.h,
+       src/atomic_ops/sysdeps/ibmc/powerpc.h:
+       Add const to first parameter of load calls.
+
+2008-07-10  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/m68k.h: Remove SMP-unsafe
+       AO_or_full, and let it be autogenerated instead.
+
+2008-07-03  Hans Boehm <Hans.Boehm@hp.com> (Really Thiemo Seufer)
+
+       * src/atomic_ops/sysdeps/gcc/mips.h: Really add mips support,
+       fixing a merge accident.
+
+2008-05-30  Hans Boehm <Hans.Boehm@hp.com> (Really from various Debian
+       contributors)
+
+       * doc/Makefile.in, src/Makefile.in, src/atomic_ops/Makefile.in:
+       Regenerate.
+
+2008-05-30  Hans Boehm <Hans.Boehm@hp.com> (Really from various Debian
+       contributors)
+
+       * src/atomic_ops.h, src/atomic_ops/sysdeps/Makefile.am,
+       src/atomic_ops/sysdeps/gcc/mips.h: Add mips support.
+       * src/atomic_ops/sysdeps/gcc/m68k.h: Make test_and_set work
+       on char, align AO_t.  Add cas, or.
+       * src/atomic_ops/sysdeps/gcc/s390.h: Fix include paths.
+       * src/atomic_ops/generalize.h: Fix AO_compare_and_swap_double_acquire.
+       * Makefile.in, aclocal.m4, src/atomic_ops/sysdeps/Makefile.in,
+       tests/Makefile.in: Regenerate.
+
+2008-02-11  Hans Boehm <Hans.Boehm@hp.com>
+          (Really Ian Wienand & Debian maintainers)
+
+       * src/atomic_ops/sysdeps/gcc/x86.h
+       (AO_compare_double_and_swap_double_full): Correctly account for
+       ebx usage with PIC.
+
+2008-01-09  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h: Let
+       double_ptr_storage default to long long; define everywhere.
+
+2008-01-08  Hans Boehm <Hans.Boehm@hp.com> (Really mostly Joerg Wagner)
+
+       * src/atomic_ops/sysdeps/msftc/x86.h: Conditionally add
+       compare_double_and_swap_double.
+
+2008-01-06  Hans Boehm <Hans.Boehm@hp.com> (Really mostly Joerg Wagner)
+
+       * src/atomic_ops/generalize.h: Add test_and_set generalizations,
+       Add AO_double_compare_and_swap generalizations.
+       * src/atomic_ops/sysdeps/armcc/arm_v6.h: New file.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Handle V6 and V7.
+       * src/atomic_ops/sysdeps/gcc/x86.h,
+       src/atomic_ops/sysdeps/{gcc,msftc}/x86_64.h: Conditionally add
+       compare_double_and_swap_double, commented out for msftc.
+       * src/atomic_ops/sysdeps/standard_ao_double_t.h:  Add
+       double_ptr_storage field.
+
+2008-01-03  Hans Boehm <Hans.Boehm@hp.com>
+       (Merge from separate atomic_ops tree)
+
+       * src/atomic_ops/sysdeps/gcc/x86.h: Define correct macro for
+       double-width cas, and fix its implementation.
+       * doc/README.txt: Clarify use of _full.  Add more warnings about
+       data dependencies.
+
+2008-01-02  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_load_acquire): Add
+       %X1 modifier to support indexed addressing.
+
+2007-07-23  Hans Boehm <Hans.Boehm@hp.com> (really Jim Marshall)
+
+       * src/atomic_ops/sysdeps/msftc/x86.h (_InterlockedExchangeAdd): Define
+       for VC++6.
+
+2007-07-05  Andreas Tobler  <a.tobler@schweiz.org>
+
+       * src/atomic_ops.h: Check for __powerpc64__ and __ppc64__ to include
+       powerpc.h.
+
+2007-06-26  Hans Boehm <Hans.Boehm@hp.com> (really Luca Barbato)
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h (AO_load_acquire): Add
+       64-bit version.
+
+2007-06-13  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops.h: include stddef.h
+
+2007-06-06  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/msftc/x86_64.h: New file.
+       * src/atomic_ops.h: Add test for msftc/x86_64.h.
+       * src/atomic_ops/sysdeps/msftc/x86.h: Complain for _WIN64.
+       * src/atomic_ops/sysdeps/Makefile.am: Add x86_64.h.
+       * src/atomic_ops/sysdeps/Makefile.in: Regenerate.
+       * src/atomic_ops/sysdeps/aligned_atomic_load_store.h,
+       src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h,
+       src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h:
+       Replace unsigned long cast with size_t.
+
+2007-05-17  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/hppa.h (AO_test_and_set_full):
+       Add cast for return.
+
+2007-05-14  Hans Boehm <Hans.Boehm@hp.com>
+
+       * doc/README.txt: Update to reflect C++0x effort.
+
+2007-05-07  Hans Boehm <Hans.Boehm@hp.com> (with help from Philipp Zambelli)
+
+       * src/atomic_ops/sysdeps/msftc/x86.h: Don't just assume that mfence
+       is present.
+       * src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set_full): Correct
+       oldval type.
+
+2006-11-09  Earl Chew (Agilent)
+
+       * msftc/x86.h: Follow Microsoft documentation and include
+       windows.h.
+
+[1.2 release]
+
+2006-07-11  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/hpc/ia64.h: Fix typos.
+
+2006-03-28  Earl Chew (Agilent)
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Remove unused variable cr.
+       * src/atomic_ops/sysdeps/msftc/x86.h:
+       Use new intrinsics available in MSVC 2003 and MSVC 2005.
+       Use inline assembler to generate mfence and byte sized xchg
+       Use correct prototype for InterlockedCompareExchange.
+       * src/atomic_ops.h: Add test for __PPC__ .
+       * tests/run_parallel.inc: Add simple VxWorks support.
+       * tests/test_atomic.c, tests/test_atomic_include.h: Add prototypes
+       to silence compiler warnings.
+
+2006-11-13  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/powerpc.h: Beginnings of 64 bit support.
+       * src/atomic_ops/sysdeps/gcc/x86.h: Use "=q" for AO_test_and_set_full.
+
+2005-11-04  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/ia64.h: Include
+       all_acquire_release_volatile.h, instead of just the pointer-sized
+       version.
+       * src/atomic_ops/sysdeps/gcc/ia64.h: Include
+       all_acquire_release_volatile.h and all_atomic_load_store.h,
+       instead of just the pointer-sized versions.
+
+[1.1 release]
+
+2005-09-27  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops.h: Define AO_CAN_EMUL_CAS for arm.
+       * src/atomic_ops/sysdeps/read_ordered.h: New file, extracted from
+       ordered_except_wr.h.
+       * src/atomic_ops/sysdeps/ordered_except_wr.h: include read_ordered.h
+       instead of duplicating it.
+       * src/atomic_ops/sysdeps/gcc/arm.h: Include read_ordered.h.
+
+2005-09-16  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/sysdeps/gcc/arm.h: Replace the AO_test_and_set
+       definition with one that might actually work.  (Thanks to Kazu
+       Hirata and Paul Brook.)
+
+2005-08-01  Hans Boehm <Hans.Boehm@hp.com>
+
+       * src/atomic_ops/Makefile.am: Change function naming from "byte" to
+       "char" (again).
+
+[1.0 release]
+
+2005-03-21  Hans Boehm <Hans.Boehm@hp.com>
+       Fix various acquire_release_volatile.h files to reflect the fact
+       that both icc and gcc seem to reorder ordinary memory accesses around
+       volatile accesses early in the compilation. Modify the acquire
+       release test to catch this problem (with high probability, and only on
+       a multiprocessor).
+
+2005-03        Hans Boehm <Hans.Boehm@hp.com>
+       Fixes for recently introduced bugs.  Update x86 and x86-64 assembly
+       syntax to deal with complaints by some recent gcc versions.
+
+2005-02        Hans Boehm <Hans.Boehm@hp.com>
+       Added libatomic_ops_gpl library with support for mostly
+       lock-free stack and malloc().
+
+2005-01 Ian Wienand <ianw@gelato.unsw.edu.au>, Al Stone <ahs3@debian.org>,
+       Hans Boehm <Hans.Boehm@hp.com>
+       Use autoconf, automake, starting with code from Debian package.
+       Don't use libtool.
+
+2005-01        Hans Boehm <Hans.Boehm@hp.com>
+       * test_and_set_t_is_ao_t.h, test_and_set_t_is_char.h, others:
+       Change most platforms to use byte-wide test-and-set locations.
+
+2005-01        Hans Boehm <Hans.Boehm@hp.com>
+       * ao_t_is_int.h: Add to trivially support int-wide operations
+       on platforms with int-sized pointers.
+
+2004-12        Hans Boehm <Hans.Boehm@hp.com>
+       * gcc/powerpc.h: First serious attempt to support PowerPC (with
+       help from Maged Michael and others).
+
+2004-12        Hans Boehm <Hans.Boehm@hp.com>
+       * sunc/sparc.[hS]: Added minimal support for the Sun SPARC compiler.
+       * atomic_ops_sysdeps.S: Add support for platforms that require
+       out-of-line assembly code.
+
+2004-10 Hans Boehm <Hans.Boehm@hp.com>
+       More work on char, short, int sized data.  Add both
+       compare_double_and_swap_double and compare_and_swap_double.
+       Typically each platform will provide at most one of these.
+
+2004-07-02  Ranko Zivojnovic
+       Replace both instances of AO_HAVE_NOP_FULL with AO_HAVE_nop_full.
+
+2004-06 Hans Boehm <Hans.Boehm@hp.com>
+       Start to add atomic_ops primitives for different sized data.
+
+2003-12-18  Hans Boehm  <Hans.Boehm@hp.com>
+
+       * atomic_ops/sysdeps/acquire_release_volatile.h, atomic_ops.h:
+       Fix support for ecc on IA64.  Remove compiler_barrier workaround
+       for gcc 3.4 and later.
+
+2003-12-17  Hans Boehm  <Hans.Boehm@hp.com>
+
+       * atomic_ops/sysdeps/hpc/{ia64.h,hppa.h},
+       atomic_ops/sysdeps/msftc/x86.h, Makefile, Makefile.atomic_ops,
+       Makefile.atomic_ops.msft, atomic_ops.h: Add initial support
+       for atomic_ops for VC++/Windows/X86 and HP/UX with the HP
+       compiler on PA_RISC and IA64.
+
+2003-12-09  Hans Boehm  <Hans.Boehm@hp.com>
+
+       * many: Install under "atomic_ops" instead of "ao".
+       Change atomic_ops include file structure.  Auxiliary include
+       files are all under include/atomic_ops.
+       Fix (hopefully) "make dist" in atomic_ops distribution.
+       Renamed various types to end in _t, though the old versions
+       are still defined for backward compatibility.
+
+2003-12-08  Carlos O'Donell  <carlos@baldric.uwo.ca>
+
+       * ao_sysdeps/gcc/hppa.h: Define AO_CLEAR macro. Change
+       AO_pa_clearable_loc type. Add __ldcw, and __ldcw_align
+       helper macros. AO_test_and_set_full uses helper macros.
+
+
+Started sometime after version 0.4 release.  Currently the format is
+informal.  Eventually should become more GNU-like.