[all-commits] [llvm/llvm-project] 126274: [CMake][NFC] Refactor iOS simulator/device test co...

danliew via All-commits all-commits at lists.llvm.org
Thu Jan 23 12:44:38 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 12627450609cf0a0a5c3bc7419fbb642740a5bb2
      https://github.com/llvm/llvm-project/commit/12627450609cf0a0a5c3bc7419fbb642740a5bb2
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2020-01-23 (Thu, 23 Jan 2020)

  Changed paths:
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/test/asan/CMakeLists.txt

  Log Message:
  -----------
  [CMake][NFC] Refactor iOS simulator/device test configuration generation code for ASan.

Summary:
The previous code hard-coded platform names but compiler-rt's CMake
build system actually already knows which Apple platforms ASan supports.

This change uses this information to enumerate the different Apple
platforms.

rdar://problem/58798733

Reviewers: kubamracek, yln

Subscribers: mgorny, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

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


  Commit: 06569361d0185c130299d87e4d32637fd5ada34b
      https://github.com/llvm/llvm-project/commit/06569361d0185c130299d87e4d32637fd5ada34b
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2020-01-23 (Thu, 23 Jan 2020)

  Changed paths:
    M compiler-rt/test/tsan/CMakeLists.txt

  Log Message:
  -----------
  [CMake][NFC] Refactor iOS simulator/device test configuration generation code for TSan.

Summary:
The previous code hard-coded platform names but compiler-rt's CMake
build system actually already knows which Apple platforms TSan supports.

This change uses this information to enumerate the different Apple
platforms.

This change relies on the `get_capitalized_apple_platform()` function
added in a previous commit.

rdar://problem/58798733

Reviewers: kubamracek, yln

Subscribers: mgorny, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

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


  Commit: 9d9b470e69acfca321f005490cfba14fe5247229
      https://github.com/llvm/llvm-project/commit/9d9b470e69acfca321f005490cfba14fe5247229
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2020-01-23 (Thu, 23 Jan 2020)

  Changed paths:
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/lib/fuzzer/CMakeLists.txt
    M compiler-rt/test/fuzzer/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Refactor iOS simulator/device test configuration generation code for LibFuzzer.

Summary:
In order to do this `FUZZER_SUPPORTED_OS` had to be pulled out of
`lib/fuzzer/CMakeLists.txt` and into the main config so we can use it
from the `test/fuzzer/CMakeList.txt`. `FUZZER_SUPPORTED_OS` currently
has the same value of `SANITIZER_COMMON_SUPPORTED_OS` which preserves
the existing behaviour but this allows us in the future to adjust the
supported platforms independent of `SANITIZER_COMMON_SUPPORTED_OS`. This
mirrors the other sanitizers.

For non-Apple platforms `FUZZER_SUPPORTED_OS` is not defined and
surprisingly this was the behaviour before this patch because
`SANITIZER_COMMON_SUPPORTED_OS` was actually empty. This appears to
not matter right now because the functions that take an `OS` as an
argument seem to ignore it on non-Apple platforms.

While this change tries to be NFC it is technically not because we
now generate an iossim config whereas previously we didn't. This seems
like the right thing to do because the build system was configured to
compile LibFuzzer for iossim but previously we weren't generating a lit
test config for it. The device/simulator testing configs don't run by
default anyway so this shouldn't break testing.

This change relies on the get_capitalized_apple_platform() function
added in a previous commit.

rdar://problem/58798733

Reviewers: kubamracek, yln

Subscribers: mgorny, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

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


Compare: https://github.com/llvm/llvm-project/compare/29c7e6c8c97f...9d9b470e69ac


More information about the All-commits mailing list