__sync_val_compare_exchange_8 not available on 32-bit mips powerpc architectures

Issue #93 resolved
Sebastian Ramacher created an issue

Builds of x265 1.4 failed on our 32-bit mips and powerpc ports with:

libx265.so.35: undefined reference to `__sync_val_compare_and_swap_8'
libx265.so.35: undefined reference to `__sync_or_and_fetch_8'

They do not support 64 bit variants of __sync_val_compare_and_swap and __sync_or_and_fetch. It is possible to use __atomic_or_fetch and __atomic_compare_exchange and link with -latomic instead.

There is an initial patch available at https://lists.debian.org/debian-mips/2014/12/msg00005.html. It does not detect if linking against atomic is necessary.

Comments (2)

  1. Log in to comment