[all-commits] [llvm/llvm-project] e78223: [libcxx] [test] Remove --env PATH from the static ...

Martin Storsjö via All-commits all-commits at lists.llvm.org
Fri Aug 19 01:44:07 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e78223e79efc886ef6f0ea5413deab3737d6d63b
      https://github.com/llvm/llvm-project/commit/e78223e79efc886ef6f0ea5413deab3737d6d63b
  Author: Martin Storsjö <martin at martin.st>
  Date:   2022-08-19 (Fri, 19 Aug 2022)

  Changed paths:
    M libcxx/test/configs/llvm-libc++-static-clangcl.cfg.in

  Log Message:
  -----------
  [libcxx] [test] Remove --env PATH from the static clangcl config

The PATH is set in order to be able to find the tested DLL at runtime.
When linking statically, it's not necessary to set the PATH.

Setting PATH in the executor has the downside that it clears the
existing path (it's not prepended/appended to it), which means
that the executed tools can't find other tools - which sets the
executor-has-no-bash flag.

By removing the unnecessary setting of PATH, we have a properly
working bash even when wrapped by the executor, which gets rid
of the executor-has-no-bash flag in this test configuration, which
makes 9 more testcases be executed.

Differential Revision: https://reviews.llvm.org/D131481


  Commit: 63d88ed5bfcf81964e0c3492d28440f92ca01ee3
      https://github.com/llvm/llvm-project/commit/63d88ed5bfcf81964e0c3492d28440f92ca01ee3
  Author: Martin Storsjö <martin at martin.st>
  Date:   2022-08-19 (Fri, 19 Aug 2022)

  Changed paths:
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libcxx] [test] Split the TEST_HAS_SANITIZERS define into TEST_IS_EXECUTED_IN_A_SLOW_ENVIRONMENT

This makes its role clearer. It's plausible that one may want to manually
define TEST_IS_EXECUTED_IN_A_SLOW_ENVIRONMENT when running the tests in
some environments - in particular, it seems to be necessary to use the
higher tolerance timeouts if running the tests on Windows runners
on Github Actions.

Also add the descriptive comment in one file where it was missing.

Differential Revision: https://reviews.llvm.org/D131484


  Commit: 81e55ff47317a06bfac6a9bc1b81c7107dfd415b
      https://github.com/llvm/llvm-project/commit/81e55ff47317a06bfac6a9bc1b81c7107dfd415b
  Author: Martin Storsjö <martin at martin.st>
  Date:   2022-08-19 (Fri, 19 Aug 2022)

  Changed paths:
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp

  Log Message:
  -----------
  [libcxx] [test] Make some threading tests more robust

Increase the timeout tolerance if TEST_IS_EXECUTED_IN_A_SLOW_ENVIRONMENT
is set, similarly to how it's done in a couple other tests.

Use `std::this_thread::yield();` instead of busylooping. When multiple
threads are busylooping, it's plausible that not all threads even get
started running before the timeout runs out.

This makes the threading tests succeed if run in Windows runners on
Github Actions.

Differential Revision: https://reviews.llvm.org/D131483


  Commit: 8437c8ff422fc9676e5de75aa9483d9e24691074
      https://github.com/llvm/llvm-project/commit/8437c8ff422fc9676e5de75aa9483d9e24691074
  Author: Martin Storsjö <martin at martin.st>
  Date:   2022-08-19 (Fri, 19 Aug 2022)

  Changed paths:
    M libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp

  Log Message:
  -----------
  [libcxx] [test] Mark the libcxx/selftest/remote-substitutions.sh.cpp test as requiring bash in the executor

It's unclear to me why this wasn't tagged this way already in
87fe0709d4ad7c3128f998f14c66245ebb423e4f / D114612 where the
feature flag executor-has-no-bash was added, as this test did exist
in its current form already at that time.

Differential Revision: https://reviews.llvm.org/D131446


Compare: https://github.com/llvm/llvm-project/compare/3fd4213059a4...8437c8ff422f


More information about the All-commits mailing list