[all-commits] [llvm/llvm-project] 0407f6: [lldb][AArch64] Use atomics to sync threads in SVE...
David Spickett via All-commits
all-commits at lists.llvm.org
Thu Aug 31 02:06:32 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0407f681a7efa61f81f885e186c25ed99aecb8d4
https://github.com/llvm/llvm-project/commit/0407f681a7efa61f81f885e186c25ed99aecb8d4
Author: David Spickett <david.spickett at linaro.org>
Date: 2023-08-31 (Thu, 31 Aug 2023)
Changed paths:
M lldb/test/API/commands/register/register/aarch64_sve_registers/rw_access_dynamic_resize/TestSVEThreadedDynamic.py
M lldb/test/API/commands/register/register/aarch64_sve_registers/rw_access_dynamic_resize/main.c
Log Message:
-----------
[lldb][AArch64] Use atomics to sync threads in SVE threading test
Previously we would "process continue" then wait for the number of
threads to be 3 before proceeding with the test.
Testing this on QEMU I saw it would sometimes get stuck at this check,
with one of the threads on a breakpoint before the other had started.
We do want it to be on a breakpoint, but we need the other thread to have
at least started so lldb can interact with both.
I've also seen it timeout on the Graviton buildbot, likely the same
cause.
To fix this add 2 variables to stall either thread until the other
has started up. Then it doesn't matter which one hits its breakpoint
first, the test will just continue the one that didn't, until both
are on the expected breakpoint.
Differential Revision: https://reviews.llvm.org/D157967
More information about the All-commits
mailing list