The NetBSD Project

CVS log for pkgsrc/devel/libatomic_ops/Makefile

[BACK] Up to [] / pkgsrc / devel / libatomic_ops

Request diff between arbitrary revisions

Default branch: MAIN

Revision 1.23 / (download) - annotate - [select for diffs], Tue Sep 14 08:29:08 2021 UTC (5 weeks, 2 days ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3, HEAD
Changes since 1.22: +2 -3 lines
Diff to previous 1.22 (colored)

libatomic_ops: updated to 7.6.12

Changes 7.6.12

Allow to generalize bool-CAS for sparc (gcc)
Declare argument of AO_load_next with const in atomic_ops_stack
Describe double_compare_and_swap operation in README_details
Document CAS operations better in README_details
Fix gcc/sunc x86 AO_compare_double_and_swap_double missing side effect
Fix library name in README_details
Fix link fail caused by missing GCC char/short atomic primitives on riscv64
Fix size of local variable passed to cas[x] (gcc/sparc)
Implement fetch-CAS for sparc (gcc)
Refactor gcc x86 memory constraints
Refine and reformat description of size prefix in README_details
Remove outdated notes in README_details
Replace x86 setz instruction by asm flag output operand (gcc)
Support MSYS host (configure)
Turn off compare_double_and_swap_double_full PIC hack for GCC 5+ (x86)
Update README_win32 to match Makefile.msft
Use GCC atomic intrinsics for s390x (clang 8.0+ and gcc 5.4+)
Use __alignof__ instead of sizeof in atomic variable alignment assertions
Workaround assertion violation in AO_load/store on m68k

Revision 1.22 / (download) - annotate - [select for diffs], Sun May 10 05:06:21 2020 UTC (17 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: pkgsrc-2021Q2-base, pkgsrc-2021Q2, pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored)

devel/libatomic_ops: fix layout of MESSAGE file

Revision 1.21 / (download) - annotate - [select for diffs], Fri Apr 24 12:33:26 2020 UTC (17 months, 4 weeks ago) by nia
Branch: MAIN
Changes since 1.20: +3 -1 lines
Diff to previous 1.20 (colored)

libatomic_ops: Include so MACHINE_PLATFORM gets defined

Fixes build on sparc. From Tobias Ulmer via pkgsrc-users@

Revision 1.20 / (download) - annotate - [select for diffs], Sat Mar 2 14:51:53 2019 UTC (2 years, 7 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3, pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

libatomic_ops: updated to 7.6.10

* Eliminate 'my_chunk_ptr-AO_initial_heap out of bounds' cppcheck warning
* Fix 'AO_*_TS_T is not defined' compiler warnings (GCC-8)
* Fix 'duplicate symbol' error for test_malloc/stack with static libs (OS X)
* Workaround 'argument to function assert is always 1' cppcheck warnings

Revision 1.19 / (download) - annotate - [select for diffs], Thu Dec 13 19:14:26 2018 UTC (2 years, 10 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q4-base, pkgsrc-2018Q4
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

libatomic_ops: updated to 7.6.8

Changes 7.6.8:
Eliminate 'casting signed to bigger unsigned int' CSA warning (test_stack)
Eliminate 'redundant blank line at start/end of block' CodeFactor warning
Fix 'Cannot implement CAS_full on this architecture' build error (nios2)
Fix a typo in arm_v6.h
Support aarch64-ilp32 (GCC) and UWP/arm64 (MS VC) targets
Undefine AO_ARM_HAVE_* private macros after their usage
Use standalone private macro to guard against AO_GCC_BARRIER redefinition
Workaround 'condition my_chunk_ptr is always false' cppcheck false positive

Revision 1.18 / (download) - annotate - [select for diffs], Tue Sep 18 03:42:07 2018 UTC (3 years, 1 month ago) by maya
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3
Changes since 1.17: +5 -1 lines
Diff to previous 1.17 (colored)

libatomic_ops: build fix for netbsd/sparc, which might be sparc v8.

from Tobias Ulmer in PR pkg/53570

Revision 1.17 / (download) - annotate - [select for diffs], Thu Aug 16 10:13:30 2018 UTC (3 years, 2 months ago) by adam
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)

libatomic_ops: updated to 7.6.6

COPYING: sync with FSF's gpl-2.0.txt
Fix 'undefined reference to __atomic_load/store/cas_16' error (gcc-7/x64)
Fix a typo in the overview section of README
Fix comments style in and
Update copyright information in README and some header files

Revision 1.16 / (download) - annotate - [select for diffs], Tue Apr 17 05:30:30 2018 UTC (3 years, 6 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2
Changes since 1.15: +3 -6 lines
Diff to previous 1.15 (colored)

libatomic_ops: update to 7.6.4.

== [7.6.4] 2018-03-27 ==

* Add RISC-V support
* Convert atomic_ops_malloc.c and tests to valid C++ code
* Eliminate 'function is never used' cppcheck warning for load_before_cas
* Eliminate 'using argument that points at uninitialized var' cppcheck error
* Fix 'AO_pt_lock undefined' error if cross-compiling manually (MinGW)
* Fix public headers inclusion from clients C++ code
* Remove gcc/nios2.h file (include gcc/generic.h directly for nios2)
* Support MIPS rel6

Revision 1.15 / (download) - annotate - [select for diffs], Wed Feb 21 23:59:33 2018 UTC (3 years, 7 months ago) by maya
Branch: MAIN
CVS Tags: pkgsrc-2018Q1-base, pkgsrc-2018Q1
Changes since 1.14: +2 -1 lines
Diff to previous 1.14 (colored)

libatomic-ops: check if AO_AO_TS_T is defined before using it

PR pkg/53046: x11/libdrm doesn't compile on GNU/Linux

Revision 1.14 / (download) - annotate - [select for diffs], Mon Jan 1 20:32:55 2018 UTC (3 years, 9 months ago) by adam
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

libatomic_ops: updated to 7.6.2

Allow to alter DEFAULT/MAX_NTHREADS values in test_malloc/stack
Allow to select almost-non-blocking stack implementation explicitly
Annotate AO_malloc with 'alloc_size' and 'malloc' attributes
Avoid misleading 'AO_t undefined' error if wrong atomic_ops.h included
Define AO_TS_SET to 1 (true) if GCC atomic_test_and_set is used
Disable workaround in stack_pop_acquire that was needed for ancient Clang
Do not define AO_GCC_FORCE_HAVE_CAS for Clang 3.8+ (Aarch64)
Do not disallow to define double_load using built-in atomics (Aarch64)
Do not expose AO_GCC_FORCE_HAVE_CAS macro to client code (GCC)
Do not install documentation if configure --disable-docs (new option)
Do not produce .tar.bz2 distribution file (configure)
Eliminate '-pedantic is not an option that controls warnings' GCC message
Eliminate data race in cons() of test_malloc
Eliminate GCC-5 ASan global-buffer-overflow false positive for AO_stack_bl
Fill in allocated memory with values depending on thread id (test_malloc)
Fix 'bad register name %sil' assembler error (GCC-4.4/x86)
Fix 'unknown attribute no_sanitize' compiler warning for GCC
Fix AO_malloc for sizes near CHUNK_SIZE
Fix memory leak in test_malloc
Fix test failures for Clang-3.8 and older (Aarch64)
Fix test_stack failure if AO_PREFER_BUILTIN_ATOMICS (GCC/Aarch64)
Fix typo in AO_REAL_NEXT_PTR comment
Increase the default number of threads to 16 in test_malloc/stack
Mark unallocated/freed memory as inaccessible using ASan functionality
New macro (DONT_USE_MMAP) to support testing as if mmap() is unavailable
New macro to select stack implementation based on CAS-double
Place no_sanitize attributes in a GCC-compliant way
Prevent too long run of test_atomic_generalized (especially with TSan)
Simplify '#if' expressions in gcc/x86.h (code refactoring)
Test smallest allocation of large type (test_malloc)
Use __builtin_expect in atomic_ops_malloc
Use built-in atomics for load/store/CAS for Clang by default (Aarch64)
Use double-word atomic intrinsics for recent Clang versions (gcc/x86.h)
Use GCC atomic intrinsics for Hexagon (clang 3.9+)
Use generalized double-wide load/store if AO_PREFER_GENERALIZED (Aarch64)
Workaround 'unused result' code defects in atomic_ops.c, list_atomic
Workaround Thread Sanitizer (TSan) false positive warnings
Also, includes 7.4.8 changes

Revision 1.13 / (download) - annotate - [select for diffs], Mon May 29 12:55:10 2017 UTC (4 years, 4 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

Updated libatomic_ops to 7.6.0.

== [7.6.0] 2017-05-19 ==

* Add *_and/or/xor* and *_[fetch_]compare_and_swap* tests to test_atomic
* Add asm-based and/or/xor implementation for char/short/int (gcc/x86)
* Add asm-based char/short/int CAS implementation for gcc/x86[_64]
* Add configure '--disable-atomic-intrinsics' option
* Add dd_acquire_read case to test_atomic
* Add initial nios2 architecture support
* Add Makefile target (check-nolink) to compile all source without linking
* Add Makefile target to run all tests without test-driver
* Add test_atomic_generalized to Makefile and Makefile.msft
* Allow alternate CC (CROSS_CC) for AC_TRY_COMPILE (configure)
* Always define word-wide CAS for x86 (MS VC++ 8+)
* Avoid atomic_compare_exchange_n if no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_n
* Avoid extra nop_full in stack_pop_acquire if atomic intrinsics used (x86)
* Basic support of TILE-Gx and TILEPro CPUs
* Code refactoring of int-wide primitives in gcc/x86.h
* Define AO_TS_SET as __GCC_ATOMIC_TEST_AND_SET_TRUEVAL if applicable
* Define CLANG/GNUC_PREREQ macros to check gcc/clang minimum version
* Do not define print_list() unless used (tests)
* Eliminate 'condition sizeof(long)>4 is always true' cppcheck style warning
* Eliminate 'ISO C90 does not support long long' compiler pedantic warning
* Eliminate 'scope of variable can be reduced' cppcheck warnings
* Eliminate redundant lwsync 2nd call in CAS_full on fail (gcc/PowerPC)
* Fix 'unknown attribute no_sanitize' compiler warning (clang prior to v3.8)
* Fix 'variable new value is never used' cppcheck style warning
* Fix missing double_compare_and_swap_dd_acquire_read
* Fix reporting about missing and/or/xor_dd_acquire_read (test_atomic)
* Hide AO_locks symbol
* Implement AO_CLEAR using C11 atomic intrinsic (GCC)
* Implement CAS_acquire/release/full using __atomic_compare_exchange_n (gcc)
* Implement char and/or/xor and short CAS for msftc ARM and X86[_64]
* Implement char CAS and char/short add for msftc X86[_64] (VS 2013+)
* Implement compiler_barrier using C11 __atomic_signal_fence (GCC)
* Implement int CAS/inc/dec for msftc/x86_64
* Implement short inc/dec directly for msftc ARM and X86[_64]
* Initial ibmc/powerpc (xlc) support
* New configure option (--enable-werror) to treat warnings as compiler errors
* New macro AO_PREFER_BUILTIN_ATOMICS to rely on C11 atomics fully (AArch64)
* Refine AO_nop_write comment for ARM big.LITTLE architecture
* Refine configure messages when checking for compiler options
* Refine documentation about _full memory ordering suffix
* Refine README how to build the library source from the repository
* Relax shareability domain for dmb st in AO_nop_write (ARM/AArch64)
* Remove redundant include windows.h from headers (msftc/x86[_64])
* Remove spaces at EOLn in asm code
* Report gcc/clang pedantic warnings (configure)
* Support NaCl/arm
* Suppress 'ISO C does not support __int128 type' GCC/Clang pedantic warning
* Test store/CAS emulation explicitly
* Update shared libraries version info to 2:0:1
* Use GCC atomic intrinsics for PowerPC 32/64 (GCC 4.8+ and clang 3.8+)
* Use GCC atomic intrinsics for x86, x64, ARM, MIPS (gcc 4.9+, clang 3.5+)
* Use generalized double-wide load/store if AO_PREFER_GENERALIZED (gcc/x86)
* Workaround '#error' cppcheck error messages
* Workaround 'condition always true', 'unused stored value' cppcheck warnings
* Workaround 'function is never used' cppcheck style warnings
* Workaround 'obsolescent ftime called' cppcheck style warning (POSIX)
* Workaround 'overflow in pointer subtraction' cppcheck warning
* Workaround 'shifting 32-bit value by 32 bits undefined' cppcheck warning
* Workaround 'uninitialized memory use' code analyzer false warning (tests)
* Workaround 'uninitialized variable' cppcheck error in hpc/hppa.h
* Workaround 'value of macro is unknown' cppcheck information messages
* Workaround a bug in double-wide intrinsics of Clang/x64 with ASan enabled
* Workaround MSan warning about uninitialized data read by generalized store

Revision 1.12 / (download) - annotate - [select for diffs], Thu May 18 20:37:03 2017 UTC (4 years, 5 months ago) by adam
Branch: MAIN
Changes since 1.11: +12 -8 lines
Diff to previous 1.11 (colored)

== [7.4.6] 2017-05-18 ==

* Add assertion that double-wide CAS target is aligned (msftc/x86[_64])
* Add configure --enable-gcov option (enable code coverage analysis)
* Code refactoring of gcc/powerpc.h to avoid code duplication
* Eliminate 'cast to long from void*' compiler warning in test_atomic
* Eliminate 'implicit declaration of close' warning in 'strict ANSI' mode
* Eliminate 'missing braces around initializer' gcc warning (hppa)
* Eliminate 'printf format specifies type void*' GCC pedantic warnings
* Eliminate 'value shift followed by expansion' false code defect warning
* Enable limited testing in Makefile.msft without Cygwin
* Fix (delete) comment for AO_and_full (x86)
* Fix block_all_signals compilation in 'strict ANSI' mode
* Fix missing .exe for test filenames in Makefile (MinGW)
* Fix missing printed value names (test_stack)
* Implement fetch-CAS for s390[x] (gcc)
* Move libraries version info to the beginning of
* Refine documentation in Makefile.msft how to run all tests (MS VC)
* Refine README about library downloading
* Rename doc/README.txt to doc/README_details.txt
* Support AIX/ppc (gcc)
* Support CFLAGS_EXTRA to pass extra user-defined compiler flags (make)
* Support n32 ABI for mips64
* Update shared libraries version info for 7.4.6+ (to 1:4:0)
* Use 'inline code' format for commands in
* Use LLD and SCD instructions on mips64
* Workaround 'resource leak' false positives in AO_malloc, add_elements
* Workaround 'uninitialized memory use' MemorySanitizer warning (test_atomic)
Also, includes 7.2h changes

Revision 1.11 / (download) - annotate - [select for diffs], Sun Jun 12 14:33:57 2016 UTC (5 years, 4 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2017Q1-base, pkgsrc-2017Q1, pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3, pkgsrc-2016Q2-base, pkgsrc-2016Q2
Changes since 1.10: +2 -2 lines
Diff to previous 1.10 (colored)

Updated libatomic_ops to 7.4.4.

== [7.4.4] 2016-05-24 ==

* Eliminate 'signed-to-unsigned value extension' compiler warning in malloc.
* Eliminate 'variable set but not used' Cppcheck warnings in test_stack.
* Fix GCC 5.x compatibility for AArch64 double-wide primitives.
* Fix makefile preventing AO_pause undefined in libatomic_ops_gpl.
* Fix missing casts to match printf format specifier in test_atomic.
* Fix missing output folder on making auto-generated test files (Automake).
* Fix typo in (in description of AO_ASM_X64_AVAILABLE).
* Minor fix of code alignment in mips AO_compare_and_swap.
* Remove TODO file.
* Restore contribution info in ChangeLog for authors not listed in git log.
Also, includes 7.2g changes.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Nov 9 08:32:17 2014 UTC (6 years, 11 months ago) by obache
Branch: MAIN
CVS Tags: pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4, pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2, pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4
Changes since 1.9: +4 -8 lines
Diff to previous 1.9 (colored)

Update libatomic_ops to 7.4.2.

== [7.4.2] 2014-05-02 ==

* Fix a typo in doc/README.txt (remove redundant "an" article).
* Update emails/links due to project site transition.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Jun 5 02:36:03 2014 UTC (7 years, 4 months ago) by obache
Branch: MAIN
CVS Tags: pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2
Changes since 1.8: +3 -2 lines
Diff to previous 1.8 (colored)

Fixes path for pc files to overwrite.


Revision 1.8 / (download) - annotate - [select for diffs], Mon May 12 22:46:49 2014 UTC (7 years, 5 months ago) by pho
Branch: MAIN
Changes since 1.7: +5 -2 lines
Diff to previous 1.7 (colored)

Fix build failure at least on Darwin:

atomic_ops_stack.c refers to AO_pause defined in atomic_ops.c so
either removing -no-undefined or declaring the dependency is needed.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Apr 16 11:21:32 2014 UTC (7 years, 6 months ago) by wiz
Branch: MAIN
Changes since 1.6: +8 -19 lines
Diff to previous 1.6 (colored)

Update to 7.4.0.

== [7.4.0] 2013-11-17 ==

* Add and/or/xor entries to list_atomic (tests).
* Add char/short/int/AO_double_t and dd_acquire cases to list_atomic (tests).
* Add compile-time assertion for size of 'standard' AO_double_t.
* Add double_store pthread-based implementation and tests.
* Add generalized CAS primitives of char/short/int size.
* Add generalized atomic and/or/xor operations for char/short/int types.
* Add generalized fetch_and_add_acquire/release (for ARMv6+).
* Add generic implementation of double_load primitives.
* Add information about AO_ASSUME_VISTA to README_win32.
* Add internal header containing only char/short/int/AO_t atomic loads.
* Add load/store primitives generalization based on CAS.
* Add lock-based implementation of char/short/int_fetch_compare_and_swap.
* Add makefile rule to test list_atomic.template syntax (tests).
* Add missing 'const' in aligned-atomic XSIZE_load implementation.
* Add missing double_compare_and_swap to generalization.
* Add missing generalization of no-barrier CAS in template.
* Add negative double-CAS test cases to test_atomic_include (tests).
* Add test_stack to Makefile.msft (tests).
* Adjust fprintf arguments type matching specifier in test_stack (tests).
* Adjust included filenames in atomic_ops_malloc and test_stack.
* Adjust quotes in echo command of Makefile.msft (Win32).
* Always use 'mfence' for nop_full if target CPU supports SSE2 (gcc/x86).
* Better document configure THREADDLLIBS variable.
* Cast away volatile on dereference in CAS-based generalization primitives.
* Change policy regarding version numbers ("micro" part instead of "alpha").
* Convert README to Markdown format.
* Define AO_NO_PTHREADS in configure if no pthreads (Win32 and VxWorks).
* Define AO_int_X operations for ARM and avr32.
* Define double-wide ordered loads/stores for x86.
* Define int_and/or/xor primitives in ao_t_is_int header.
* Define nop_full as compiler barrier for pre-ARMv6 single-core case.
* Do not duplicate BUILT_SOURCES entries in nobase_private_HEADERS (Makefile).
* Do not include standard_ao_double_t.h where double-CAS is unimplemented.
* Do not report absence of meaningless nop, load and store in test_atomic.
* Do not use deprecated AO_T and AO_TS_T (tests).
* Eliminate 'missing initializer' warning for AO_stack_t value initializer.
* Eliminate 64-bit compiler warnings in atomic_ops_malloc.
* Eliminate arithmetic shifts in double-CAS (gcc/arm, msftc/x86).
* Eliminate warning for fetch_and_add argument in test_atomic_include (tests).
* Enable Makefile.msft for Win64.
* Enable build using toolchain without pthreads.
* Enable double_compare_and_swap for non-cpp code (msftc/x86.h).
* Enable generalization of all variants of CAS via fetch_compare_and_swap.
* Enable test_stack for pthreads-w32 and Win32 with native threads.
* Fix generalized AO_char/short_compare_and_swap args (missing 'unsigned').
* Fix makefile sed rule for list_atomic (tests).
* Fix missing abort() usage in atomic_ops_malloc and tests on WinCE.
* Generalize compare_double_and_swap_double using double_compare_and_swap.
* Generalize double_load/store for x86_64 (GCC).
* Generate ao_t_is_int, 'loadstore' headers from templates.
* Generate generalized AO_t load/store/fetch_and_add primitives from template.
* Generate ordered_loads/stores_only headers from templates.
* Group all X_acquire_release_volatile.h and X_[aligned_]atomic_load_store.h.
* Implement and/or/xor, AO_double_load for ARM.
* Implement atomic store using direct write by default on ARMv6+.
* Implement char/short/int-wide primitives using GCC built-in atomic/sync.
* Implement char/short/int_fetch_and_add for msftc/x86[_64] (Win32).
* Implement char/short_fetch_and_add, char/short_load for ARMv6+ (GCC).
* Implement char/short_store primitives at aligned addresses for ARM.
* Implement compare_double_and_swap_double for SunCC/x86.
* Implement double_load/store based on guaranteed x86 access atomicity.
* Implement double_store for ARMv7 using LDREXD/STREXD.
* Implement load/store via simple LDR/STR for ARMv6+ (msftc).
* Implement nop_full/write using 'dmb' instruction if available (gcc/arm).
* Improve debug printing in test_stack (tests).
* Log messages to stdout instead of stderr (tests).
* Make AO_ASSUME_VISTA also enables Win98 code in msftc/x86.h (Win32).
* Minimize gcc/generic-arithm template by factoring out barriers.
* Move 'unsigned' keyword to XCTYPE in generalize-small template.
* Move default compiler options to CFLAGS in Makefile.msft (Win32).
* Move definitions of ordered loads/stores to inner separate headers.
* Move gcc-generic AO_t-wide primitives to generic-small/arithm headers.
* Move generalized arithmetical primitives to 'generalize-arithm' template.
* Optimize AO_spin manually to minimize compiler influence on its duration.
* Parameterize list_atomic template with XSIZE (tests).
* Perform only few list reversals in test_malloc if AO based on pthreads.
* Put to 'dist' package (Automake).
* Remote duplicate definition of test_and_set_acquire in generalize.h.
* Remove X_aligned_atomic_load_store headers and template.
* Remove duplicate AO_spin and AO_pause definition in atomic_ops_stack.
* Remove gcc/x86_64.h eliminating code duplication of gcc/x86.h.
* Remove nested AO_USE_PTHREAD_DEFS macro check in atomic_ops.h (gcc/arm).
* Remove redundant 'cc' clobber for LDREXD instruction (gcc/arm).
* Remove store_full from msftc/arm.h in favor of generalized primitive.
* Remove sunc/x86_64.h eliminating code duplication of sunc/x86.h.
* Remove unsafe emulation-based implementation of double CAS (SunCC/x86_64).
* Remove useless 'perror' call in run_parallel.h (tests).
* Reorder AO_double_t union elements for AO_DOUBLE_T_INITIALIZER portability.
* Replace atomic_load_store.template with atomic_load and atomic_store ones.
* Replace some FIXME items with TODO in atomic_ops.c and sysdeps headers.
* Specify fetch_and_add/sub1 result as unused in test_atomic (tests).
* Support AArch64 (64-bit ARM) target (GCC).
* Support ARMv8 target (gcc/arm).
* Test double_compare_and_swap in test_atomic (tests).
* Use AO_ prefix for internal functions in arm_v6.h, hppa.h.
* Use __atomic GCC built-in to implement generic double-wide CAS.
* Use built-in __sync CAS for double-CAS if AO_USE_SYNC_CAS_BUILTIN for x86.
* Workaround GCC 4.4.3 warning reported for 'val' of list_atomic.c (tests).

== [7.3alpha2] 2012-05-11 ==

* Add '-no-undefined' to LDFLAGS in src/
* Add AO_and, AO_xor atomic operations.
* Add AO_fetch_compare_and_swap primitives.
* Add and fill in AUTHORS, TODO files.
* Add file.
* Adjust AO_..._H macros in public headers.
* Code refactoring of gcc/arm.h by introducing AO_ARM_HAVE_x macros.
* Define AO macros for libatomic_ops version identification.
* Do not define NDEBUG if '--enable-assertions' passed to configure.
* Eliminate compiler warnings in various functions and macros.
* Generalize AO_compare_and_swap primitives via AO_fetch_compare_and_swap.
* Generalize acquire/release/full CAS primitives for MIPS
* Implement fetch_and_add, test_and_set primitives for MIPS.
* Improve Makefile for MS VC++; pass '-W3' option to MS compiler.
* Include ao_t_is_int.h from atomic_ops.h after first generalization pass
* Merge all files in src tree.
* Minor code refactoring of atomic_ops.c, generic_pthread.h.
* Minor configure build improvements (e.g., ensure proper autoconf version).
* Place only major per-release changes description to ChangeLog (this file).
* Recognize AO_PREFER_GENERALIZED macro to favor generalization over assembly.
* Remove all auto-generated files except for generalize-small.h from the repo.
* Remove duplicate doc/COPYING and empty NEWS files.
* Replace atomic_ops_malloc static mmap-related empty functions with macros.
* Replace pointer relational comparisons with non-pointer ones.
* Require autoconf 2.61 instead of v2.64.
* Show extra compiler warnings (GCC only).
* Turn off AO primitives inlining if AO_NO_INLINE defined.
* Use __builtin_expect in CAS failure loop condition checks (GCC only).

== [7.2e] 2013-11-10 ==

* Fix (remove) invalid include of read_ordered.h for ARM.
* Fix AM_CONFIG_HEADER in configure for autoconf-2.69-1.
* Fix AO_pause sleep delay for particular argument values (Win32).
* Fix ARMv7 LDREXD/STREXD double-wide operand specification (GCC/Clang).
* Fix LDREXD/STREXD use for pre-Clang3.3/arm.
* Fix README regarding _acquire_read barrier.
* Fix XSIZE_load/store definition order in generalize-small template.
* Fix asm constraint of CAS memory operand for gcc/alpha, clang-3.1/mips.
* Fix asm constraints of primitives in sunc/x86.h.
* Fix cmpxchg16b-based compare_double_and_swap_double for SunCC/x86_64.
* Fix compare_double_and_swap_double and double_ptr_storage for gcc/x32.
* Fix compare_double_and_swap_double for clang3.0/x86 in PIC mode.
* Fix compare_double_and_swap_double_full definition condition in emul_cas.
* Fix generalize-small template adding missed CAS-based fetch_and_add.
* Fix generalized fetch_and_add function.
* Fix missing compiler barrier in nop_full for uniprocessor ARM.
* Fix ordered_except_wr header inclusion for s390.
* Fix return type of AO_int_X primitives defined in ao_t_is_int header.
* Fix return type of char/short/int_load_read() in read_ordered.h.
* Fix template-based headers regeneration order in src/Makefile.
* Fix typos in ao_t_is_int, atomic_ops.h, generalize.h, msftc/arm.h comments.
* Fix variable type to match printf format specifier in test_stack.
* Fix visibility and initial value of 'dummy' variable in atomic_ops_stack.
* Terminate tests with abort after error reported.

== [7.2d] 2012-08-09 ==

* Fix AO_compare_double_and_swap_double_full for gcc-4.2.1/x86 in PIC mode.
* Fix AO_compiler_barrier missing parentheses.
* Fix missing 'unsigned' for generalized AO_char/short_fetch_and_add result.

== [7.2] 2012-05-11 ==

* Add and to pkgconfig folder.
* Define and use AO_PTRDIFF_T in tests for casts between pointer and integer.
* Fix AO_compare_and_swap return type for s390 and PowerPC.
* Fix AO_compare_double_and_swap_double_full for gcc/x86 (PIC mode).
* Fix AO_stack_push_release to workaround bug in clang-1.1/x86 compiler.
* Fix AO_test_and_setXX in tests/list_atomic.template.
* Fix AO_test_and_set_full (gcc/x86[_64].h) to work-around a bug in LLVM v2.7.
* Fix AO_test_and_set_full on m68k.
* Fix __ARM_ARCH_5__ macro handling for Android NDK (ARMv7).
* Fix configure for Cygwin, mingw-w64/32.
* Fix configure to define __PIC__ macro explicitly if needed (GCC).
* Fix double_ptr_storage definition for GCC pre-v4 (x86_64).
* Fix for x32 by removing 'q' suffix in x86-64 instructions.
* Fix generalization for IA-64 (regarding AO_or, AO_..._read/write primitives)
* Fix generalized AO_<type>_fetch_and_add() return type.
* Fix test_atomic_include for the case of missing CAS primitive.
* Fix test_malloc - allocate less memory in case of missing mmap.
* Implement the basic atomic primitives for the hexagon CPU.

Revision 1.6 / (download) - annotate - [select for diffs], Wed Oct 31 11:17:10 2012 UTC (8 years, 11 months ago) by asau
Branch: MAIN
CVS Tags: pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1, pkgsrc-2012Q4-base, pkgsrc-2012Q4
Changes since 1.5: +1 -3 lines
Diff to previous 1.5 (colored)

Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Oct 4 18:15:29 2011 UTC (10 years ago) by bsiegert
Branch: MAIN
CVS Tags: pkgsrc-2012Q3-base, pkgsrc-2012Q3, pkgsrc-2012Q2-base, pkgsrc-2012Q2, pkgsrc-2012Q1-base, pkgsrc-2012Q1, pkgsrc-2011Q4-base, pkgsrc-2011Q4
Changes since 1.4: +4 -3 lines
Diff to previous 1.4 (colored)

Import libatomic_ops from wip, copy distfile to

Fixes build on Mac OS X, thus fixing PR pkg/45377.

Revision 1.4 / (download) - annotate - [select for diffs], Sat Jan 31 20:05:57 2009 UTC (12 years, 8 months ago) by sketch
Branch: MAIN
CVS Tags: pkgsrc-2011Q3-base, pkgsrc-2011Q3, pkgsrc-2011Q2-base, pkgsrc-2011Q2, pkgsrc-2011Q1-base, pkgsrc-2011Q1, pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3, pkgsrc-2010Q2-base, pkgsrc-2010Q2, pkgsrc-2010Q1-base, pkgsrc-2010Q1, pkgsrc-2009Q4-base, pkgsrc-2009Q4, pkgsrc-2009Q3-base, pkgsrc-2009Q3, pkgsrc-2009Q2-base, pkgsrc-2009Q2, pkgsrc-2009Q1-base, pkgsrc-2009Q1
Changes since 1.3: +2 -2 lines
Diff to previous 1.3 (colored)

Sun Studio x86 implementation isn't quite good enough yet for e.g.
pulseaudio, so instead use the generic pthread implementation for now.

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jan 27 20:26:01 2009 UTC (12 years, 8 months ago) by sketch
Branch: MAIN
Changes since 1.2: +2 -2 lines
Diff to previous 1.2 (colored)

Forgot to install the sunc/x86.h header in previous.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Dec 22 02:46:52 2008 UTC (12 years, 10 months ago) by jmcneill
Branch: MAIN
CVS Tags: pkgsrc-2008Q4-base, pkgsrc-2008Q4
Changes since 1.1: +7 -1 lines
Diff to previous 1.1 (colored)

libtoolize libatomic_ops so it builds shared libraries, bump PKGREVISION

Revision / (download) - annotate - [select for diffs] (vendor branch), Sat Oct 25 00:32:23 2008 UTC (12 years, 11 months ago) by bjs
Branch: TNF
CVS Tags: pkgsrc-base
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

Import libatomic_ops-20081024 (version 1.2)

The latest code is only found in the boehm-gc CVS repository (see
Makefile.version for information).  I had to take this from there,
as there were bug fixes.

This library was imported primarily for the [hopefully]
upcoming audio/pulseaudio package.

TODO: Add support for NetBSD atomic ops?

This package provides semi-portable access to hardware provided
atomic memory operations.  These might allow you to write code:

- That does more interesting things in signal handlers.
- Makes more effective use of multiprocessors by allowing you to write
  clever lock-free code.  Note that such code is very difficult to get
  right, and will unavoidably be less portable than lock-based code.  It
  ia also not always faster than lock-based code.  But it may occasionally
  be a large performance win.
- To experiment with new and much better thread programming paradigms, etc.

As the latest code for this library is only available via CVS, this package
provides a snapshot.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Oct 25 00:32:23 2008 UTC (12 years, 11 months ago) by bjs
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

CVSweb <>