[PATCH] D68064: [Builtins] Provide a mechanism to selectively disable tests based on whether an implementation is provided by a builtin library.

Dan Liew via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 25 17:33:30 PDT 2019


delcypher created this revision.
delcypher added reviewers: beanz, steven_wu, arphaman, dexonsmith, phosek, thakis.
Herald added subscribers: Sanitizers, mgorny.
Herald added projects: LLVM, Sanitizers.

If a platform removes some builtin implementations (e.g. via the
Darwin-excludes mechanism) then this can lead to test failures because
the test expects an implementation to be available.

To solve this lit features are added for each configuration based
on which sources are included in the builtin library. The features
are of the form `crt_has_<name>` where `<name>` is the name of the
source file with the file extension removed. This handles C and
assembly sources.

With the lit features in place it is possible to make certain tests
require them.

Example:

  REQUIRES: crt_has_comparedf2

In this patch only tests that need to be annotated to fix breakages
caused by r371926 are annotated. In the future we can annotate more
tests as required.

rdar://problem/55520987


Repository:
  rCRT Compiler Runtime

https://reviews.llvm.org/D68064

Files:
  test/builtins/CMakeLists.txt
  test/builtins/Unit/comparedf2_test.c
  test/builtins/Unit/comparesf2_test.c
  test/builtins/Unit/divdf3_test.c
  test/builtins/Unit/divmodsi4_test.c
  test/builtins/Unit/divsf3_test.c
  test/builtins/Unit/divsi3_test.c
  test/builtins/Unit/lit.cfg.py
  test/builtins/Unit/lit.site.cfg.py.in
  test/builtins/Unit/modsi3_test.c
  test/builtins/Unit/truncdfsf2_test.c
  test/builtins/Unit/udivmodsi4_test.c
  test/builtins/Unit/udivsi3_test.c
  test/builtins/Unit/umodsi3_test.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D68064.221869.patch
Type: text/x-patch
Size: 7415 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190926/f084c989/attachment.bin>


More information about the llvm-commits mailing list