This is an archive of the discontinued LLVM Phabricator instance.

[Analysis] Only run plugins tests if plugins are actually enabled
ClosedPublic

Authored by phosek on May 16 2019, 6:48 PM.

Diff Detail

Event Timeline

phosek created this revision.May 16 2019, 6:48 PM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptMay 16 2019, 6:48 PM
Szelethus accepted this revision.May 16 2019, 10:12 PM

Thank you so much! :)

This revision is now accepted and ready to land.May 16 2019, 10:12 PM
This revision was automatically updated to reflect the committed changes.
hintonda added inline comments.
llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
930 ↗(On Diff #199977)

This is a breaking patch. What's the rational for unilaterally disabling LLVM_ENABLE_PLUGINS.

It gives the following errors:
-- PrintFunctionNames ignored -- Loadable modules not supported on this platform.
-- AnnotateFunctions ignored -- Loadable modules not supported on this platform.
-- SampleAnalyzerPlugin ignored -- Loadable modules not supported on this platform.
-- CheckerDependencyHandlingAnalyzerPlugin ignored -- Loadable modules not supported on this platform.
-- CheckerOptionHandlingAnalyzerPlugin ignored -- Loadable modules not supported on this platform.
-- BugpointPasses ignored -- Loadable modules not supported on this platform.
-- TestPlugin ignored -- Loadable modules not supported on this platform.
hintonda added inline comments.May 20 2019, 9:52 AM
llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
930 ↗(On Diff #199977)

Btw, the change essentially turns off testing of plugins, and bugpoint, etc., in all the buildbots, but since it isn't reported as an error, they don't report that these tests are no longer run.,

This also breaks "ninja check-cfi-and-supported" on clean build (run cmake in empty directory)

http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/21622/steps/check-cfi-and-supported%20in%20gcc%20build/logs/stdio

100%] Running the cfi regression tests
llvm-lit: /b/sanitizer-x86_64-linux/build/llvm/utils/lit/lit/TestingConfig.py:102: fatal: unable to parse config file '/b/sanitizer-x86_64-linux/build/llvm/projects/compiler-rt/test/cfi/lit.cfg', traceback: Traceback (most recent call last):
  File "/b/sanitizer-x86_64-linux/build/llvm/utils/lit/lit/TestingConfig.py", line 89, in load_from_path
    exec(compile(data, path, 'exec'), cfg_globals, None)
  File "/b/sanitizer-x86_64-linux/build/llvm/projects/compiler-rt/test/cfi/lit.cfg", line 46, in <module>
    raise BaseException("Tests unsupported")
BaseException: Tests unsupported

projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported.dir/build.make:57: recipe for target 'projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported' failed
make[3]: *** [projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported] Error 2
CMakeFiles/Makefile2:37638: recipe for target 'projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported.dir/all' failed
make[2]: *** [projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported.dir/all] Error 2
CMakeFiles/Makefile2:37645: recipe for target 'projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported.dir/rule' failed
make[1]: *** [projects/compiler-rt/test/cfi/CMakeFiles/check-cfi-and-supported.dir/rule] Error 2
Makefile:12157: recipe for target 'check-cfi-and-supported' failed
make: *** [check-cfi-and-supported] Error 2
+ echo @@@STEP_FAILURE@@@
+ check_in_gcc 1 dfsan
@@@STEP_FAILURE@@@
+ CONDITION=1
+ SANITIZER=dfsan
+ '[' 1 == 1 ']'
+ echo @@@BUILD_STEP check-dfsan in gcc build@@@

This also breaks "ninja check-cfi-and-supported" on clean build (run cmake in empty directory)

I've fixed this with DLLVM_BUILD_LLVM_DYLIB=ON but not sure if this is the right approach long-term.

This also breaks "ninja check-cfi-and-supported" on clean build (run cmake in empty directory)

I've fixed this with DLLVM_BUILD_LLVM_DYLIB=ON but not sure if this is the right approach long-term.

I have a patch that only reverts the changes to HandleLLVMOptions.cmake, D62154, and restores previous behavior.