File libatomic_ops.changes of Package libatomic_ops

-------------------------------------------------------------------
Sun Dec 28 23:18:53 UTC 2025 - Dirk Müller <dmueller@suse.com>

- update to 7.10.0:
  * Add comment that overflow of a counter in AO_stack_pop is
    impossible
  * Add missed copyright header to ibmc/powerpc.h
  * Adjust/reformat copyright header in armcc/arm_v6.h
  * Build tests by default in CMake script
  * Change AO_REAL_NEXT_PTR() to accept argument as reference
    only
  * Change static initializer of initial_heap_ptr and spin_dummy
    to zero
  * Consistently use '__sparc' predefined macro w/o trailing
    underscores
  * Define AO_N_BITS to a bigger value if pointer type is larger
    than size_t
  * Define AO_uintptr_t and use it in AO malloc and stack
    (refactoring)
  * Define functions and variables of tests as static
    (refactoring)
  * Discontinue support of configure '--enable-gcov' option
  * Do not define AO_GCC_FORCE_HAVE_CAS for modern clang and gcc
    for RISC-V
  * Eliminate 'can be declared as pointer to const' cppcheck FP
    in test_atomic
  * Eliminate 'condition is always true' cppcheck style warnings
    in test_atomic
  * Fix 'libtool library used but LIBTOOL is undefined'
    autoreconf error
  * Give verbose error message if multiple include
    test_and_set_t_is_*_t.h
  * Guard against direct include of internal headers from outside
    (refactoring)
  * Hide AO_initial_heap internal symbol
  * Implement AO_fetch_compare_and_swap_full for sunc/sparc
  * Minor text improvement in README_details.txt and
    README_malloc.txt
  * New macro (AO_NO_ASM_XCHG) to use Win32 InterlockedExchange
  * Prefix/suffix no_sanitize attribute with double underscore
    (refactoring)
  * Provide AO_INITIAL_HEAP_CHUNKS macro to control
    AO_initial_heap size
  * Provide char/short-width CAS for RISC-V w/o '-latomic' if gcc
    v14+
  * Refine comment about AO_double_t size in
    standard_ao_double_t.h
  * Refine documentation when stack implementation is fully lock-
    free
  * Remove AO_stack_push/pop based on compare_and_swap_double
  * Rename CMake 'BUILD_SHARED_LIBS' option to
    'AO_BUILD_SHARED_LIBS'
  * Replace CMake 'build_tests' option to standard
    'BUILD_TESTING' one
  * Support RISC-V ILP32 ABI (rv64ilp32)
  * Support double-wide CAS on 64-bit RISC-V with Zacas extension
  * Support double-wide primitives on E2K (in 32- and 64-bit
    modes)
  * Support targets with double-wide pointers (CHERI, E2K
    protected mode)
  * Update autotools for release tar (ac-2.72, am-1.18.1,
    lt-2.5.4, m4-1.4.20)
  * Use AO_internal_ptr_t to operate link pointer inside AO stack
    and malloc
  * Use atomic_ops_sysdeps.S by configure on any SPARC with non-
    GCC compiler
  * Workaround 'memory leak in add_elements' cppcheck FP in
    test_stack
  * Document Win32-specific AO_NO_ASM_XADD macro in README
  * Eliminate 'atomic_thread_fence is unsupported with tsan'
    gcc-11 warning
  * Eliminate 'munmap argument 1 from incompatible pointer type'
    gcc warning
  * Eliminate 'uninitialized memory use' gcc-13 warning in
    test_atomic
  * Fix all broken URLs in comments
  * Fix atomic_ops_sysdeps.S compilation for SunPro compiler in
    CMake script
  * Update URLs after repository transfer to bdwgc organization
  * Update CMake minimum required version to 3.10

-------------------------------------------------------------------
Mon Jan 15 14:55:48 UTC 2024 - Andreas Schwab <schwab@suse.de>

- Enable testsuite on qemu build

-------------------------------------------------------------------
Fri Dec 15 21:54:03 UTC 2023 - Jan Engelhardt <jengelh@inai.de>

- Update to release 7.8.2
  * Eliminate 'atomic_thread_fence is unsupported with tsan' gcc-11 warning
  * Fix get_chunk for case of mmap area is located before AO_initial_heap
  * Fix typo in AO_HAVE_compare_and_swap_double name in atomic_ops_stack.h

-------------------------------------------------------------------
Tue Mar 28 08:09:48 UTC 2023 - Jan Engelhardt <jengelh@inai.de>

- Update to release 7.8.0
  * Do not expose AO_REAL_HEAD/NEXT_PTR implementation in header
    by default
  * Hide AO_free_list symbol
  * New AO_stack_is_lock_free API function
  * Use GCC atomic intrinsics for SPARC

-------------------------------------------------------------------
Thu Aug 25 21:50:14 UTC 2022 - Jan Engelhardt <jengelh@inai.de>

- Update to release 7.6.14
  * Avoid AO_stack_t to cross CPU cache line boundary

-------------------------------------------------------------------
Mon Sep 13 10:45:00 UTC 2021 - Jan Engelhardt <jengelh@inai.de>

- Update to release 7.6.12
  * Declare argument of AO_load_next with const in
    atomic_ops_stack.
  * Fix gcc/sunc x86 AO_compare_double_and_swap_double
    missing side effect.
  * Fix link fail caused by missing GCC char/short atomic
    primitives on riscv64.
  * Turn off compare_double_and_swap_double_full PIC hack for
    GCC 5+ (x86).
  * Use GCC atomic intrinsics for s390x (clang 8.0+ and gcc 5.4+).

-------------------------------------------------------------------
Fri Aug  2 07:04:12 UTC 2019 - Martin Liška <mliska@suse.cz>

- Use FAT LTO objects in order to provide proper static library.

-------------------------------------------------------------------
Fri Mar 15 09:40:59 UTC 2019 - Jan Engelhardt <jengelh@inai.de>

- Update to new upstream release 7.6.10
  * Fix compiler warnings

-------------------------------------------------------------------
Tue Jan  8 02:26:25 UTC 2019 - Jan Engelhardt <jengelh@inai.de>

- Update to new upstream release 7.6.8
  * Support aarch64-ilp32 (GCC) target

-------------------------------------------------------------------
Wed Oct 24 05:09:08 UTC 2018 - sean@suspend.net

- Update to new upstream release 7.6.6
  * Fix undefined reference to __atomic_load/store/cas_16
  * Fix a typo in the overview section of README
  * Fix comments style in configure.ac and Makefile.am
  * Update copyright information in README and some header files
- Remove patch libatomic_ops-ppc64.patch, looks merged

-------------------------------------------------------------------
Mon Jan 29 11:04:41 UTC 2018 - jengelh@inai.de

- Update to new upstream release 7.6.2
  * Fix GCC 5.x compatibility for AArch64 double-wide primitives
  * Implement fetch-CAS for s390[x] (gcc)
  * Support n32 ABI for mips64
  * Use LLD and SCD instructions on mips64
  * Use generalized double-wide load/store if
    AO_PREFER_GENERALIZED (gcc/x86)
  * 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+)
  * Relax shareability domain for dmb st in AO_nop_write
    (ARM/AArch64)
  * Implement AO_CLEAR using C11 atomic intrinsic (GCC)
  * Implement CAS_acquire/release/full using
    __atomic_compare_exchange_n (gcc)
  * Implement compiler_barrier using C11 __atomic_signal_fence
    (GCC)
  * Add initial nios2 architecture support
  * 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]
- Remove aarch64-gcc5.patch (no longer applies)

-------------------------------------------------------------------
Thu Apr  7 12:26:58 UTC 2016 - schwab@suse.de

- aarch64-gcc5.patch: fix build with gcc >= 5

-------------------------------------------------------------------
Thu Mar  5 09:41:01 UTC 2015 - jengelh@inai.de

- Update homepage URLs

-------------------------------------------------------------------
Mon Jul 21 08:44:50 UTC 2014 - jengelh@inai.de

- Update to new upstream release 7.4.2
* 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 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 load/store primitives generalization based on CAS.
* Add lock-based implementation of char/short/int_fetch_compare_and_swap.
* Add missing double_compare_and_swap to generalization.
* Add missing generalization of no-barrier CAS in template.
* Always use 'mfence' for nop_full if target CPU supports SSE2 (gcc/x86).
* Cast away volatile on dereference in CAS-based generalization primitives.
* 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 include standard_ao_double_t.h where double-CAS is unimplemented.
* Do not report absence of meaningless nop, load and store in test_atomic.
* Eliminate 'missing initializer' warning for AO_stack_t value initializer.
* Eliminate arithmetic shifts in double-CAS (gcc/arm, msftc/x86).
* Enable generalization of all variants of CAS via fetch_compare_and_swap.
* 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_fetch_and_add, char/short_load for ARMv6+ (GCC).
* Implement char/short_store primitives at aligned addresses for ARM.
* 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).
* Minimize gcc/generic-arithm template by factoring out barriers.
* Move 'unsigned' keyword to XCTYPE in generalize-small template.
* 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.
* 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.
* Reorder AO_double_t union elements for AO_DOUBLE_T_INITIALIZER portability.
* Replace atomic_load_store.template with atomic_load and atomic_store ones.
* Support AArch64 (64-bit ARM) target (GCC).
* Support ARMv8 target (gcc/arm).
* 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.
- Drop libatomic_ops-aarch64.patch (no longer needed)

-------------------------------------------------------------------
Thu May 15 14:53:31 UTC 2014 - tchvatal@suse.com

- Version bump to 7.2e:
  * Various small fixes for 7.2 series.
- Cleanup with spec-cleaner.

-------------------------------------------------------------------
Mon Feb 10 18:39:57 UTC 2014 - dvaleev@suse.com

- Drop incorrect ppc64le patch
- Force AO_load() to map to AO_load_acquire() for powerpc

- added patches:
  * libatomic_ops-ppc64.patch
- removed patches:
  * libatomic_ops-ppc64le.patch

-------------------------------------------------------------------
Mon Dec  2 21:00:35 UTC 2013 - dvaleev@suse.com

- Fix build on ppc64le (add patch libatomic_ops-ppc64le.patch)

-------------------------------------------------------------------
Sun May 26 20:05:34 UTC 2013 - jengelh@inai.de

- Update to upstream release 7.2d
- pkgconfig support, testsuite was fixed and no longer
  loops endlessy/crashes
- Transplant libatomic_ops-aarch64.patch from "gc" package

-------------------------------------------------------------------
Wed May 23 12:45:39 UTC 2012 - jengelh@inai.de

- Rename package to upstream name (libatomic-ops-devel ->
  libatomic_ops)

-------------------------------------------------------------------
Wed Dec 21 10:31:39 UTC 2011 - coolo@suse.com

- remove call to suse_update_config (very old work around)

-------------------------------------------------------------------
Fri Dec  2 16:34:32 UTC 2011 - coolo@suse.com

- add automake as buildrequire to avoid implicit dependency

-------------------------------------------------------------------
Tue Oct 18 23:37:21 UTC 2011 - adrian@suse.de

- update to current 7.2alpha6 version
  * fixes armv7 builds
  * obsoletes all our patches
- run test cases, except when running in not thread safe qemu
- cleanup spec file
- add official URLs to home page and source
- use original upstream tar ball
- fix build for sle 11

-------------------------------------------------------------------
Fri Dec 18 13:57:19 CET 2009 - jengelh@medozas.de

- enable parallel building

-------------------------------------------------------------------
Sat Jun 20 13:14:14 CEST 2009 - coolo@novell.com

- fix build with automake 1.11

-------------------------------------------------------------------
Thu Aug  2 12:53:01 CEST 2007 - tiwai@suse.de

- fix ppc bugs in PPC assembler codes.

-------------------------------------------------------------------
Tue Jun 12 16:28:37 CEST 2007 - tiwai@suse.de

- fixed the build with s390.

-------------------------------------------------------------------
Fri Jun  8 14:40:40 CEST 2007 - tiwai@suse.de

- initial version: 1.2

openSUSE Build Service is sponsored by