Commit Graph

7 Commits

Author SHA1 Message Date
LLVM Packaging Team b90028ad2a change all shebangs to Python3
find . -name "*.py" -exec sed "s|\!/usr/bin/env python$|\!/usr/bin/env python3|g" -i {} \;

Gbp-Pq: Name python3-shebang.patch
2022-06-27 14:59:00 +08:00
LLVM Packaging Team b26a567ab7 libcxx-silent-failure-arm64
===================================================================

Gbp-Pq: Topic libcxx
Gbp-Pq: Name libcxx-silent-failure-arm64.diff
2022-06-27 14:58:55 +08:00
LLVM Packaging Team e693250818 libcxx-silent-failure-ppc64el
===================================================================

Gbp-Pq: Topic libcxx
Gbp-Pq: Name libcxx-silent-failure-ppc64el.diff
2022-06-27 14:58:55 +08:00
LLVM Packaging Team fce365d626 libcxx-silent-test-libcxx
===================================================================

Gbp-Pq: Topic libcxx
Gbp-Pq: Name libcxx-silent-test-libcxx.diff
2022-06-27 14:58:55 +08:00
LLVM Packaging Team 9b0a35275e libcxx-test-atomics-set-compare-exchange-to-be-expected-fails-on-arm
Clang 3.9 regression causes a bug when generating code for
std::atomic_compare_and_exchange*(std::atomic<long long>,...) without
optimizations. If same code is compiled with -O2 tests pass without problems.
Atomics are implement in headers with builtin functions which makes this
affect application code instead of libc++ library code.

libcxx tests default to -O0 compilation so these test need to be marked failing
on arm to allow installing packages. Use cases is so borderline failure that it
shouldn't prevent building the package. (64bit atomics in 32bit mode)


Gbp-Pq: Topic libcxx
Gbp-Pq: Name libcxx-test-atomics-set-compare-exchange-to-be-expected-fails-on-arm.patch
2022-06-27 14:58:55 +08:00
LLVM Packaging Team ed81c16606 libcxx-test-fix-lockfree-test-for-i386
Lock is_always_lock free test fails on i386 because std::atomic is aligned
Lock is_always_lock free test fails on i386 because std::atomic is aligned
to 8 bytes while long long is aligned to 4 bytes. clang can't generate inline
code for unaligned 8 byte atomics even tough instruction set and gcc support
it.

That makes it expected thaqt ATOMIC_LLONG_LOCK_FREE and
std::atomic<long long>::is_always_lock_free don't match on i386. Correct test
for std::atomic<long long> is to check if target cpu support cmpxchg8 instruction.
To set instruction support one can check __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 define.

Bug: https://llvm.org/bugs/show_bug.cgi?id=19355


Gbp-Pq: Topic libcxx
Gbp-Pq: Name libcxx-test-fix-lockfree-test-for-i386.patch
2022-06-27 14:58:54 +08:00
Lu zhiping c7c238d5f4 Import Upstream version 9.0.1 2022-06-27 14:52:34 +08:00