1
2008-02-11 Hans Boehm <Hans.Boehm@hp.com>
2
(Really Ian Wienand & Debian maintainers)
3
* src/atomic_ops/sysdeps/gcc/x86.h
4
(AO_compare_double_and_swap_double_full): Correctly account for
7
2008-01-09 Hans Boehm <Hans.Boehm@hp.com>
8
* src/atomic_ops/sysdeps/standard_ao_double_t.h: Let
9
double_ptr_storage default to long long; define everywhere.
11
2008-01-08 Hans Boehm <Hans.Boehm@hp.com> (Really mostly Joerg Wagner)
12
* src/atomic_ops/sysdeps/msftc/x86.h: Conditionally add
13
compare_double_and_swap_double.
15
2008-01-06 Hans Boehm <Hans.Boehm@hp.com> (Really mostly Joerg Wagner)
16
* src/atomic_ops/generalize.h: Add test_and_set generalizations,
17
Add AO_double_compare_and_swap generalizations.
18
* src/atomic_ops/sysdeps/armcc/arm_v6.h: New file.
19
* src/atomic_ops/sysdeps/gcc/arm.h: Handle V6 and V7.
20
* src/atomic_ops/sysdeps/gcc/x86.h,
21
src/atomic_ops/sysdeps/{gcc,msftc}/x86_64.h: Conditionally add
22
compare_double_and_swap_double, commented out for msftc.
23
* src/atomic_ops/sysdeps/standard_ao_double_t.h: Add
24
double_ptr_storage field.
26
2008-01-03 Hans Boehm <Hans.Boehm@hp.com>
27
(Merge from separate atomic_ops tree)
28
* src/atomic_ops/sysdeps/gcc/x86.h: Define correct macro for
29
double-width cas, and fix its implementation.
30
* doc/README.txt: Clarify use of _full. Add more warnings about
33
2008-01-02 Hans Boehm <Hans.Boehm@hp.com>
34
* src/atomic_ops/sysdeps/gcc/powerpc.h (AO_load_acquire): Add
35
%X1 modifier to support indexed addressing.
37
2007-07-23 Hans Boehm <Hans.Boehm@hp.com> (really Jim Marshall)
38
* src/atomic_ops/sysdeps/msftc/x86.h (_InterlockedExchangeAdd): Define
41
2007-07-05 Andreas Tobler <a.tobler@schweiz.org>
42
* src/atomic_ops.h: Check for __powerpc64__ and __ppc64__ to include
45
2007-06-26 Hans Boehm <Hans.Boehm@hp.com> (really Luca Barbato)
46
* src/atomic_ops/sysdeps/gcc/powerpc.h (AO_load_acquire): Add
49
2007-06-13 Hans Boehm <Hans.Boehm@hp.com>
50
* src/atomic_ops.h: include stddef.h
52
2007-06-06 Hans Boehm <Hans.Boehm@hp.com>
53
* src/atomic_ops/sysdeps/msftc/x86_64.h: New file.
54
* src/atomic_ops.h: Add test for msftc/x86_64.h.
55
* src/atomic_ops/sysdeps/msftc/x86.h: Complain for _WIN64.
56
* src/atomic_ops/sysdeps/Makefile.am: Add x86_64.h.
57
* src/atomic_ops/sysdeps/Makefile.in: Regenerate.
58
* src/atomic_ops/sysdeps/aligned_atomic_load_store.h,
59
src/atomic_ops/sysdeps/int_aligned_atomic_load_store.h,
60
src/atomic_ops/sysdeps/short_aligned_atomic_load_store.h:
61
Replace unsigned long cast with size_t.
63
2007-05-17 Hans Boehm <Hans.Boehm@hp.com>
64
* src/atomic_ops/sysdeps/gcc/hppa.h (AO_test_and_set_full):
67
2007-05-14 Hans Boehm <Hans.Boehm@hp.com>
68
doc/README.txt: Update to reflect C++0x effort.
70
2007-05-07 Hans Boehm <Hans.Boehm@hp.com> (with help from Philipp Zambelli)
71
* src/atomic_ops/sysdeps/msftc/x86.h: Don't just assume that mfence
73
* src/atomic_ops/sysdeps/gcc/arm.h (AO_test_and_set_full): Correct
76
2006-11-09 Earl Chew (Agilent)
77
* msftc/x86.h: Follow Microsoft documentation and include
82
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
83
* src/atomic_ops/sysdeps/hpc/ia64.h: Fix typos.
85
2006-03-28 Earl Chew (Agilent)
86
* src/atomic_ops/sysdeps/gcc/powerpc.h: Remove unused variable cr.
87
* src/atomic_ops/sysdeps/msftc/x86.h:
88
Use new intrinsics available in MSVC 2003 and MSVC 2005.
89
Use inline assembler to generate mfence and byte sized xchg
90
Use correct prototype for InterlockedCompareExchange.
91
* src/atomic_ops.h: Add test for __PPC__ .
92
* tests/run_parallel.inc: Add simple VxWorks support.
93
* tests/test_atomic.c, tests/test_atomic_include.h: Add prototypes
94
to silence compiler warnings.
96
2006-1-13 Hans Boehm <Hans.Boehm@hp.com>
97
*src/atomic_ops/sysdeps/gcc/powerpc.h: Beginnings of 64 bit support.
98
*src/atomic_ops/sysdeps/gcc/x86.h: Use "=q" for AO_test_and_set_full.
100
2005-11-4 Hans Boehm <Hans.Boehm@hp.com>
101
*src/atomic_ops/sysdeps/gcc/ia64.h: Include
102
all_acquire_release_volatile.h, instead of just the pointer-sized
104
*src/atomic_ops/sysdeps/gcc/ia64.h: Include
105
all_acquire_release_volatile.h and all_atomic_load_store.h,
106
instead of just the pointer-sized versions.
110
2005-09-27 Hans Boehm <Hans.Boehm@hp.com>
111
*src/atomic_ops.h: Define AO_CAN_EMUL_CAS for arm.
112
*src/atomic_ops/sysdeps/read_ordered.h: New file, extracted from
114
*src/atomic_ops/sysdeps/ordered_except_wr.h: include read_ordered.h
115
instead of duplicating it.
116
*src/atomic_ops/sysdeps/gcc/arm.h: Include read_ordered.h.
118
2005-09-16 Hans Boehm <Hans.Boehm@hp.com>
119
*src/atomic_ops/sysdeps/gcc/arm.h: Replace the AO_test_and_set
120
definition with one that might actually work. (Thanks to Kazu
121
Hirata and Paul Brook.)
123
2005-08-01 Hans Boehm <Hans.Boehm@hp.com>
124
*src/atomic_ops/Makefile.am: Change function naming from "byte" to
129
2005-03-21 Hans Boehm <Hans.Boehm@hp.com>
130
Fix various acquire_release_volatile.h files to reflect the fact
131
that both icc and gcc seem to reorder ordinary memory accesses around
132
volatile accesses early in the compilation. Modify the acquire
133
release test to catch this problem (with high probablity, and only on
136
2005-03 Hans Boehm <Hans.Boehm@hp.com>
137
Fixes for recently introduced bugs. Update x86 and x86-64 assembly
138
syntax to deal with complaints by some recent gcc versions.
140
2005-02 Hans Boehm <Hans.Boehm@hp.com>
141
Added libatomic_ops_gpl library with support for mostly
142
lock-free stack and malloc().
144
2005-01 Ian Wienand <ianw@gelato.unsw.edu.au>, Al Stone <ahs3@debian.org>,
145
Hans Boehm <Hans.Boehm@hp.com>
146
Use autoconf, automake, starting with code from Debian package.
149
2005-01 Hans Boehm <Hans.Boehm@hp.com>
150
* test_and_set_t_is_ao_t.h, test_and_set_t_is_char.h, others:
151
Change most platforms to use byte-wide test-and-set locations.
153
2005-01 Hans Boehm <Hans.Boehm@hp.com>
154
* ao_t_is_int.h: Add to trivially support int-wide operations
155
on platforms with int-sized pointers.
157
2004-12 Hans Boehm <Hans.Boehm@hp.com>
158
* gcc/powerpc.h: First serious attempt to support PowerPC (with
159
help from Maged Michael and others).
161
2004-12 Hans Boehm <Hans.Boehm@hp.com>
162
* sunc/sparc.[hS]: Added minimal supprt for the Sun SPARC compiler.
163
* atomic_ops_sysdeps.S: Add support for platforms that require
164
out-of-line assmebly code.
166
2004-10 Hans Boehm <Hans.Boehm@hp.com>
167
More work on char, short, int sized data. Add both
168
compare_double_and_swap_double and compare_and_swap_double.
169
Typically each platform will provide at most one of these.
171
2004-07-02 Ranko Zivojnovic
172
Replace both instances of AO_HAVE_NOP_FULL with AO_HAVE_nop_full.
174
2004-06 Hans Boehm <Hans.Boehm@hp.com>
175
Start to add atomic_ops primitives for different sized data.
177
2003-12-18 Hans Boehm <Hans.Boehm@hp.com>
178
* atomic_ops/sysdeps/acquire_release_volatile.h, atomic_ops.h:
179
Fix support for ecc on IA64. Remove compiler_barrier workaround
180
for gcc 3.4 and later.
182
2003-12-17 Hans Boehm <Hans.Boehm@hp.com>
183
* atomic_ops/sysdeps/hpc/{ia64.h,hppa.h},
184
atomic_ops/sysdeps/msftc/x86.h, Makefile, Makefile.atomic_ops,
185
Makefile.atomic_ops.msft, atomic_ops.h: Add initial support
186
for atomic_ops for VC++/Windows/X86 and HP/UX with the HP
187
compiler on PA_RISC and IA64.
189
2003-12-09 Hans Boehm <Hans.Boehm@hp.com>
191
* many: Install under "atomic_ops" instead of "ao".
192
Change atomic_ops include file structure. Auxiliary include
193
files are all under include/atomic_ops.
194
Fix (hopefully) "make dist" in atomic_ops distribution.
195
Renamed various types to end in _t, though the old versions
196
are still defined for backward compatibility.
198
2003-12-08 Carlos O'Donell <carlos@baldric.uwo.ca>
200
* ao_sysdeps/gcc/hppa.h: Define AO_CLEAR macro. Change
201
AO_pa_clearable_loc type. Add __ldcw, and __ldcw_align
202
helper macros. AO_test_and_set_full uses helper macros.
205
Started sometime after version 0.4 release. Currently the format is
206
informal. Eventually should become more GNU-like.