summaryrefslogtreecommitdiffstats
path: root/compiler-rt/test/cfi/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* Add missing lld checks in sanitizer tests.Evgenii Stepanov2019-10-281-1/+1
| | | | | | Do not add an lld dependency when this target does not exist. In this case the system installation of lld is used (or whatever is detected with -fuse-ld=lld by default).
* [compiler-rt] Rename lit.*.cfg.* -> lit.*.cfg.py.*Reid Kleckner2019-06-271-4/+4
| | | | | | | | | | | | | These lit configuration files are really Python source code. Using the .py file extension helps editors and tools use the correct language mode. LLVM and Clang already use this convention for lit configuration, this change simply applies it to all of compiler-rt. Reviewers: vitalybuka, dberris Differential Revision: https://reviews.llvm.org/D63658 llvm-svn: 364591
* compiler-rt tests: Unbreak cmake with LLVM_ENABLE_PIC=OFF on macNico Weber2019-01-161-9/+11
| | | | | | | | The LTO target doesn't exist with LLVM_ENABLE_PIC turned off. Differential Revision: https://reviews.llvm.org/D56800 llvm-svn: 351373
* [compiler-rt] Add NewPM testing to CFI testsTeresa Johnson2018-07-191-8/+14
| | | | | | | | | | | | | | | | | | Summary: Executes both LTO and ThinLTO CFI tests an additional time using the new pass manager. I only bothered to add with gold and not lld as testing with one linker should be sufficient. I didn't add for APPLE or WIN32 since I don't have a way to test those. Depends on D49429. Reviewers: pcc Subscribers: dberris, mgorny, mehdi_amini, delcypher, dexonsmith, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D49432 llvm-svn: 337465
* [cfi] Disable tests with lld on i386.Evgeniy Stepanov2017-10-051-1/+1
| | | | | | | | bin/ld.lld: error: ubsan_handlers.cc:(.debug_info+0x80D5D): has non-ABS reloc Bug pending. llvm-svn: 315027
* [cfi] Test on all available targets.Evgeniy Stepanov2017-10-051-9/+17
| | | | | | | | | | | | | | Summary: Run CFI tests on all targets current toolchain can target. On multiarch Linux, this will run all CFI tests with -m32 and -m64. Reviewers: pcc Subscribers: mgorny, llvm-commits Differential Revision: https://reviews.llvm.org/D38572 llvm-svn: 315001
* cfi: Enable ThinLTO tests on Windows.Peter Collingbourne2017-09-151-1/+1
| | | | | | | | | | | We now avoid using absolute symbols on Windows (D37407 and D37408), so this should work. Fixes PR32770. Differential Revision: https://reviews.llvm.org/D37883 llvm-svn: 313379
* [cfi] only add cfi tests on supported arches.Sean Fertile2017-08-251-5/+7
| | | | | | Differential Revision: https://reviews.llvm.org/D35101 llvm-svn: 311745
* [cfi] Fix wrong CMake condition for WIN32.Evgeniy Stepanov2017-04-241-1/+1
| | | | llvm-svn: 301257
* [cfi] Disable ThinLTO + CFI tests on Windows.Evgeniy Stepanov2017-04-241-1/+2
| | | | | | PR32770. llvm-svn: 301235
* [cfi] Disable thinlto tests on Darwin.Ahmed Bougacha2017-04-221-1/+0
| | | | | | | | | | | | These were added in r301016, but they're failing, because -fsanitize=cfi seemingly causes -flto=thin to emit raw bitcode objects, rather than the mach-o-wrapped bitcode we emit with -flto=thin alone. That causes all tests to fail with ld64 errors. Filed PR32741. llvm-svn: 301065
* [cfi] Replace elif with elseif in cmake.Evgeniy Stepanov2017-04-211-1/+1
| | | | | | Apparently, elif() is deprecated. llvm-svn: 301022
* [cfi] Run tests with and without lld and thinlto.Evgeniy Stepanov2017-04-211-15/+47
| | | | | | | Run tests in all configurations: (standalone, with devirtualization) * (gold, lld) * (lto, thinlto) llvm-svn: 301016
* Fix sanitizer tests with LLVM_TOOL_LLD_BUILD=OFF.Evgeniy Stepanov2017-03-251-1/+1
| | | | | | | | Only depend on LLD if it is going to be built. Re-land of r298174 which got reverted in r298287. llvm-svn: 298753
* Revert r298174, r298173, r298169, r298159.Evgeniy Stepanov2017-03-201-1/+1
| | | | | | | | | | | Revert "Fix sanitizer tests with LLVM_TOOL_LLD_BUILD=OFF." Revert "[asan] Remove gc-sections test with bfd." Revert "[asan] Disable globals-gc test with ld.bfd." Revert "[asan] Fix dead stripping of globals on Linux (compiler-rt)" OOM in gold linker. llvm-svn: 298287
* Fix sanitizer tests with LLVM_TOOL_LLD_BUILD=OFF.Evgeniy Stepanov2017-03-181-1/+1
| | | | | | Only depend on LLD if it is going to be built. llvm-svn: 298174
* cfi: Fixes for check-cfi when configured as an external project.Peter Collingbourne2016-09-221-5/+8
| | | | | | Differential Revision: https://reviews.llvm.org/D24817 llvm-svn: 282189
* [compiler-rt] Fix VisualStudio virtual folders layoutEtienne Bergeron2016-07-111-1/+2
| | | | | | | | | | | | | | | | | | | | Summary: This patch is a refactoring of the way cmake 'targets' are grouped. It won't affect non-UI cmake-generators. Clang/LLVM are using a structured way to group targets which ease navigation through Visual Studio UI. The Compiler-RT projects differ from the way Clang/LLVM are grouping targets. This patch doesn't contain behavior changes. Reviewers: kubabrecka, rnk Subscribers: wang0109, llvm-commits, kubabrecka, chrisha Differential Revision: http://reviews.llvm.org/D21952 llvm-svn: 275111
* cfi: Start testing CFI in both standalone and devirtualization modes.Peter Collingbourne2016-06-251-3/+12
| | | | | | Differential Revision: http://reviews.llvm.org/D21123 llvm-svn: 273758
* Introduce stats and stats_client libraries.Peter Collingbourne2016-01-161-0/+2
| | | | | | | | | This is part of a new statistics gathering feature for the sanitizers. See clang/docs/SanitizerStats.rst for further info and docs. Differential Revision: http://reviews.llvm.org/D16176 llvm-svn: 257972
* Fix CMake warning in CFI tests.Evgeniy Stepanov2016-01-081-1/+3
| | | | | | | CFI tests do not require the CFI runtime library on Windows. Do not add "cfi" as a dependency of "check-cfi" in that case. llvm-svn: 257202
* Cross-DSO control flow integrity (compiler-rt part).Evgeniy Stepanov2015-12-151-0/+1
| | | | | | | | | | | | | | | | | | This is an initial version of the runtime cross-DSO CFI support library. It contains a number of FIXMEs, ex. it does not support the diagnostic mode nor dlopen/dlclose, but it works and can be tested. Diagnostic mode, in particular, would require some refactoring (we'd like to gather all CFI hooks in the UBSan library into one function so that we could easier pass the diagnostic information down to __cfi_check). It will be implemented later. Once the diagnostic mode is in, I plan to create a second test configuration to run all existing tests in both modes. For now, this patch includes only a few new cross-DSO tests. llvm-svn: 255695
* Revert "[CMake] Provide options for toggling on and off various runtime ↵Chris Bieneman2015-12-101-6/+0
| | | | | | | | libraries." This reverts r255170. This change caused a bunch of bot failures and needs to be revised. llvm-svn: 255184
* [CMake] Provide options for toggling on and off various runtime libraries.Chris Bieneman2015-12-091-0/+6
| | | | | | | | | | | | | | | Summary: Rather than having to add new "experimental" options each time someone wants to work on bringing a sanitizer to a new platform, this patch makes options for all of them. The default values for the options are set by the platform checks that would have enabled them, but they can be overridden on or off. Reviewers: kubabrecka, samsonov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14846 llvm-svn: 255170
* [cmake] Hoist check for LLD sources up into root CMakeLists.txtReid Kleckner2015-08-111-1/+1
| | | | | | | | We will use this for ASan on Windows soon. When the ELF port of LLD matures, we can add other sanitizer integration tests to make sure they work with LLD. llvm-svn: 244549
* CFI: Update tests for various bit vector sizes following lowerbitsets optzns.Peter Collingbourne2015-07-291-4/+2
| | | | | | | | Also add a test to ensure that this doesn't regress. Differential Revision: http://reviews.llvm.org/D11584 llvm-svn: 243547
* CFI: Get check-cfi passing on Windows.Peter Collingbourne2015-07-081-0/+5
| | | | | | | | | | | | | | | | | | | | Specifically: - Start using %expect_crash. - Provide an implementation of __ubsan::getDynamicTypeInfoFromVtable for the Microsoft C++ ABI. This is all that is needed for CFI diagnostics; UBSan's -fsanitize=vptr also requires an implementation of __ubsan::checkDynamicType. - Build the sanitizer runtimes against the release version of the C runtime, even in debug builds. - Accommodate demangling differences in tests. Differential Revision: http://reviews.llvm.org/D11029 llvm-svn: 241745
* Add control flow integrity diagnosis function to UBSan runtime library.Peter Collingbourne2015-06-191-0/+1
| | | | | | | | Also includes execution tests for the feature. Differential Revision: http://reviews.llvm.org/D10269 llvm-svn: 240111
* CFI: Make check-cfi depend on libLTO on Darwin.Peter Collingbourne2015-03-161-0/+5
| | | | llvm-svn: 232426
* CFI: Add a check-cfi-and-supported rule.Peter Collingbourne2015-02-251-0/+6
| | | | | | | | This rule works like check-cfi, but fails if the tests are unsupported. This is useful to run on bots if we want to be sure that the tests aren't silently being skipped. llvm-svn: 230536
* Add test suite for the Control Flow Integrity feature.Peter Collingbourne2015-02-201-0/+23
Differential Revision: http://reviews.llvm.org/D7738 llvm-svn: 230056
OpenPOWER on IntegriCloud