[all-commits] [llvm/llvm-project] 5be7eb: [Builtins] Provide a mechanism to selectively disa...
danliew via All-commits
all-commits at lists.llvm.org
Thu Oct 17 11:11:45 PDT 2019
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 5be7eb3ab4da6e89ed23b137e6baaa13a530c9b3
https://github.com/llvm/llvm-project/commit/5be7eb3ab4da6e89ed23b137e6baaa13a530c9b3
Author: Dan Liew <dan at su-root.co.uk>
Date: 2019-10-17 (Thu, 17 Oct 2019)
Changed paths:
M compiler-rt/test/builtins/CMakeLists.txt
M compiler-rt/test/builtins/Unit/absvdi2_test.c
M compiler-rt/test/builtins/Unit/absvsi2_test.c
M compiler-rt/test/builtins/Unit/absvti2_test.c
M compiler-rt/test/builtins/Unit/adddf3vfp_test.c
M compiler-rt/test/builtins/Unit/addsf3vfp_test.c
M compiler-rt/test/builtins/Unit/addtf3_test.c
M compiler-rt/test/builtins/Unit/addvdi3_test.c
M compiler-rt/test/builtins/Unit/addvsi3_test.c
M compiler-rt/test/builtins/Unit/addvti3_test.c
M compiler-rt/test/builtins/Unit/ashldi3_test.c
M compiler-rt/test/builtins/Unit/ashlti3_test.c
M compiler-rt/test/builtins/Unit/ashrdi3_test.c
M compiler-rt/test/builtins/Unit/ashrti3_test.c
M compiler-rt/test/builtins/Unit/bswapdi2_test.c
M compiler-rt/test/builtins/Unit/bswapsi2_test.c
M compiler-rt/test/builtins/Unit/clear_cache_test.c
M compiler-rt/test/builtins/Unit/clzdi2_test.c
M compiler-rt/test/builtins/Unit/clzsi2_test.c
M compiler-rt/test/builtins/Unit/clzti2_test.c
M compiler-rt/test/builtins/Unit/cmpdi2_test.c
M compiler-rt/test/builtins/Unit/cmpti2_test.c
M compiler-rt/test/builtins/Unit/comparedf2_test.c
M compiler-rt/test/builtins/Unit/comparesf2_test.c
M compiler-rt/test/builtins/Unit/cpu_model_test.c
M compiler-rt/test/builtins/Unit/ctzdi2_test.c
M compiler-rt/test/builtins/Unit/ctzsi2_test.c
M compiler-rt/test/builtins/Unit/ctzti2_test.c
M compiler-rt/test/builtins/Unit/divdc3_test.c
M compiler-rt/test/builtins/Unit/divdf3_test.c
M compiler-rt/test/builtins/Unit/divdf3vfp_test.c
M compiler-rt/test/builtins/Unit/divdi3_test.c
M compiler-rt/test/builtins/Unit/divmodsi4_test.c
M compiler-rt/test/builtins/Unit/divsc3_test.c
M compiler-rt/test/builtins/Unit/divsf3_test.c
M compiler-rt/test/builtins/Unit/divsf3vfp_test.c
M compiler-rt/test/builtins/Unit/divsi3_test.c
M compiler-rt/test/builtins/Unit/divtc3_test.c
M compiler-rt/test/builtins/Unit/divtf3_test.c
M compiler-rt/test/builtins/Unit/divti3_test.c
M compiler-rt/test/builtins/Unit/divxc3_test.c
M compiler-rt/test/builtins/Unit/enable_execute_stack_test.c
M compiler-rt/test/builtins/Unit/eqdf2vfp_test.c
M compiler-rt/test/builtins/Unit/eqsf2vfp_test.c
M compiler-rt/test/builtins/Unit/eqtf2_test.c
R compiler-rt/test/builtins/Unit/extebdsfdf2vfp_test.c
M compiler-rt/test/builtins/Unit/extenddftf2_test.c
M compiler-rt/test/builtins/Unit/extendhfsf2_test.c
A compiler-rt/test/builtins/Unit/extendsfdf2vfp_test.c
M compiler-rt/test/builtins/Unit/extendsftf2_test.c
M compiler-rt/test/builtins/Unit/ffsdi2_test.c
M compiler-rt/test/builtins/Unit/ffssi2_test.c
M compiler-rt/test/builtins/Unit/ffsti2_test.c
M compiler-rt/test/builtins/Unit/fixdfdi_test.c
M compiler-rt/test/builtins/Unit/fixdfsivfp_test.c
M compiler-rt/test/builtins/Unit/fixdfti_test.c
M compiler-rt/test/builtins/Unit/fixsfdi_test.c
M compiler-rt/test/builtins/Unit/fixsfsivfp_test.c
M compiler-rt/test/builtins/Unit/fixsfti_test.c
M compiler-rt/test/builtins/Unit/fixtfdi_test.c
M compiler-rt/test/builtins/Unit/fixtfsi_test.c
M compiler-rt/test/builtins/Unit/fixtfti_test.c
M compiler-rt/test/builtins/Unit/fixunsdfdi_test.c
M compiler-rt/test/builtins/Unit/fixunsdfsi_test.c
M compiler-rt/test/builtins/Unit/fixunsdfsivfp_test.c
M compiler-rt/test/builtins/Unit/fixunsdfti_test.c
M compiler-rt/test/builtins/Unit/fixunssfdi_test.c
M compiler-rt/test/builtins/Unit/fixunssfsi_test.c
M compiler-rt/test/builtins/Unit/fixunssfsivfp_test.c
M compiler-rt/test/builtins/Unit/fixunssfti_test.c
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/fixunstfsi_test.c
M compiler-rt/test/builtins/Unit/fixunstfti_test.c
M compiler-rt/test/builtins/Unit/fixunsxfdi_test.c
M compiler-rt/test/builtins/Unit/fixunsxfsi_test.c
M compiler-rt/test/builtins/Unit/fixunsxfti_test.c
M compiler-rt/test/builtins/Unit/fixxfdi_test.c
M compiler-rt/test/builtins/Unit/fixxfti_test.c
M compiler-rt/test/builtins/Unit/floatdidf_test.c
M compiler-rt/test/builtins/Unit/floatdisf_test.c
M compiler-rt/test/builtins/Unit/floatditf_test.c
M compiler-rt/test/builtins/Unit/floatdixf_test.c
M compiler-rt/test/builtins/Unit/floatsidfvfp_test.c
M compiler-rt/test/builtins/Unit/floatsisfvfp_test.c
M compiler-rt/test/builtins/Unit/floatsitf_test.c
M compiler-rt/test/builtins/Unit/floattidf_test.c
M compiler-rt/test/builtins/Unit/floattisf_test.c
M compiler-rt/test/builtins/Unit/floattitf_test.c
M compiler-rt/test/builtins/Unit/floattixf_test.c
M compiler-rt/test/builtins/Unit/floatundidf_test.c
M compiler-rt/test/builtins/Unit/floatundisf_test.c
M compiler-rt/test/builtins/Unit/floatunditf_test.c
M compiler-rt/test/builtins/Unit/floatundixf_test.c
M compiler-rt/test/builtins/Unit/floatunsitf_test.c
M compiler-rt/test/builtins/Unit/floatunssidfvfp_test.c
M compiler-rt/test/builtins/Unit/floatunssisfvfp_test.c
M compiler-rt/test/builtins/Unit/floatuntidf_test.c
M compiler-rt/test/builtins/Unit/floatuntisf_test.c
M compiler-rt/test/builtins/Unit/floatuntitf_test.c
M compiler-rt/test/builtins/Unit/floatuntixf_test.c
M compiler-rt/test/builtins/Unit/gedf2vfp_test.c
M compiler-rt/test/builtins/Unit/gesf2vfp_test.c
M compiler-rt/test/builtins/Unit/getf2_test.c
M compiler-rt/test/builtins/Unit/gtdf2vfp_test.c
M compiler-rt/test/builtins/Unit/gtsf2vfp_test.c
M compiler-rt/test/builtins/Unit/gttf2_test.c
M compiler-rt/test/builtins/Unit/ledf2vfp_test.c
M compiler-rt/test/builtins/Unit/lesf2vfp_test.c
M compiler-rt/test/builtins/Unit/letf2_test.c
M compiler-rt/test/builtins/Unit/lit.cfg.py
M compiler-rt/test/builtins/Unit/lit.site.cfg.py.in
M compiler-rt/test/builtins/Unit/lshrdi3_test.c
M compiler-rt/test/builtins/Unit/lshrti3_test.c
M compiler-rt/test/builtins/Unit/ltdf2vfp_test.c
M compiler-rt/test/builtins/Unit/ltsf2vfp_test.c
M compiler-rt/test/builtins/Unit/lttf2_test.c
M compiler-rt/test/builtins/Unit/moddi3_test.c
M compiler-rt/test/builtins/Unit/modsi3_test.c
M compiler-rt/test/builtins/Unit/modti3_test.c
M compiler-rt/test/builtins/Unit/muldc3_test.c
M compiler-rt/test/builtins/Unit/muldf3vfp_test.c
M compiler-rt/test/builtins/Unit/muldi3_test.c
M compiler-rt/test/builtins/Unit/mulodi4_test.c
M compiler-rt/test/builtins/Unit/mulosi4_test.c
M compiler-rt/test/builtins/Unit/muloti4_test.c
M compiler-rt/test/builtins/Unit/mulsc3_test.c
M compiler-rt/test/builtins/Unit/mulsf3vfp_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
M compiler-rt/test/builtins/Unit/multf3_test.c
M compiler-rt/test/builtins/Unit/multi3_test.c
M compiler-rt/test/builtins/Unit/mulvdi3_test.c
M compiler-rt/test/builtins/Unit/mulvsi3_test.c
M compiler-rt/test/builtins/Unit/mulvti3_test.c
M compiler-rt/test/builtins/Unit/mulxc3_test.c
M compiler-rt/test/builtins/Unit/nedf2vfp_test.c
M compiler-rt/test/builtins/Unit/negdf2vfp_test.c
M compiler-rt/test/builtins/Unit/negdi2_test.c
M compiler-rt/test/builtins/Unit/negsf2vfp_test.c
M compiler-rt/test/builtins/Unit/negti2_test.c
M compiler-rt/test/builtins/Unit/negvdi2_test.c
M compiler-rt/test/builtins/Unit/negvsi2_test.c
M compiler-rt/test/builtins/Unit/negvti2_test.c
M compiler-rt/test/builtins/Unit/nesf2vfp_test.c
M compiler-rt/test/builtins/Unit/netf2_test.c
M compiler-rt/test/builtins/Unit/paritydi2_test.c
M compiler-rt/test/builtins/Unit/paritysi2_test.c
M compiler-rt/test/builtins/Unit/parityti2_test.c
M compiler-rt/test/builtins/Unit/popcountdi2_test.c
M compiler-rt/test/builtins/Unit/popcountsi2_test.c
M compiler-rt/test/builtins/Unit/popcountti2_test.c
M compiler-rt/test/builtins/Unit/powidf2_test.c
M compiler-rt/test/builtins/Unit/powisf2_test.c
M compiler-rt/test/builtins/Unit/powitf2_test.c
M compiler-rt/test/builtins/Unit/powixf2_test.c
M compiler-rt/test/builtins/Unit/subdf3vfp_test.c
M compiler-rt/test/builtins/Unit/subsf3vfp_test.c
M compiler-rt/test/builtins/Unit/subtf3_test.c
M compiler-rt/test/builtins/Unit/subvdi3_test.c
M compiler-rt/test/builtins/Unit/subvsi3_test.c
M compiler-rt/test/builtins/Unit/subvti3_test.c
M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
M compiler-rt/test/builtins/Unit/truncdfhf2_test.c
M compiler-rt/test/builtins/Unit/truncdfsf2_test.c
M compiler-rt/test/builtins/Unit/truncdfsf2vfp_test.c
M compiler-rt/test/builtins/Unit/truncsfhf2_test.c
M compiler-rt/test/builtins/Unit/trunctfdf2_test.c
M compiler-rt/test/builtins/Unit/trunctfsf2_test.c
M compiler-rt/test/builtins/Unit/ucmpdi2_test.c
M compiler-rt/test/builtins/Unit/ucmpti2_test.c
M compiler-rt/test/builtins/Unit/udivdi3_test.c
M compiler-rt/test/builtins/Unit/udivmoddi4_test.c
M compiler-rt/test/builtins/Unit/udivmodsi4_test.c
M compiler-rt/test/builtins/Unit/udivmodti4_test.c
M compiler-rt/test/builtins/Unit/udivsi3_test.c
M compiler-rt/test/builtins/Unit/udivti3_test.c
M compiler-rt/test/builtins/Unit/umoddi3_test.c
M compiler-rt/test/builtins/Unit/umodsi3_test.c
M compiler-rt/test/builtins/Unit/umodti3_test.c
M compiler-rt/test/builtins/Unit/unorddf2vfp_test.c
M compiler-rt/test/builtins/Unit/unordsf2vfp_test.c
M compiler-rt/test/builtins/Unit/unordtf2_test.c
Log Message:
-----------
[Builtins] Provide a mechanism to selectively disable tests based on whether an implementation is provided by a builtin library.
Summary:
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 `librt_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: librt_has_comparedf2
```
All top-level tests in `test/builtins/Unit` (i.e. not under
`arm`, `ppc`, and `riscv`) have been annotated with the appropriate
`REQUIRES: librt_has_*` statement.
rdar://problem/55520987
Reviewers: beanz, steven_wu, arphaman, dexonsmith, phosek, thakis
Subscribers: mgorny, #sanitizers, llvm-commits
Tags: #llvm, #sanitizers
Differential Revision: https://reviews.llvm.org/D68064
llvm-svn: 375150
More information about the All-commits
mailing list