This is an archive of the discontinued LLVM Phabricator instance.

[clangd] Test benchmark if we can build it
Needs ReviewPublic

Authored by sammccall on Sep 13 2018, 5:59 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None

Event Timeline

sammccall created this revision.Sep 13 2018, 5:59 AM
kbobyrev accepted this revision.Sep 13 2018, 6:59 AM

Looks good, thanks!

While we're here: I'm wondering whether we should also introduce very basic test which would just run clangd-indexer since it doesn't depend on benchmarks and would be run on all buildbots.

Also, I was thinking whether we should ask some buildbot owners to enable LLVM_BUILD_BENCHMARKS, but it probably makes sense when we have more benchmarks (ideally, across different LLVM parts).

This revision is now accepted and ready to land.Sep 13 2018, 6:59 AM

Looks good, thanks!

While we're here: I'm wondering whether we should also introduce very basic test which would just run clangd-indexer since it doesn't depend on benchmarks and would be run on all buildbots.

Isn't that this test?

Also, I was thinking whether we should ask some buildbot owners to enable LLVM_BUILD_BENCHMARKS, but it probably makes sense when we have more benchmarks (ideally, across different LLVM parts).

Hmm, I thought that was already the case. Isn't the benchmark stuff only not-built on the windows bots?

kbobyrev added a subscriber: rnk.Sep 13 2018, 7:36 AM

Looks good, thanks!

While we're here: I'm wondering whether we should also introduce very basic test which would just run clangd-indexer since it doesn't depend on benchmarks and would be run on all buildbots.

Isn't that this test?

Yes, but this test checks both. As mentioned, buildbots don't build benchmarks by default and hence this testcase is not actually run anywhere at the moment.

Also, I was thinking whether we should ask some buildbot owners to enable LLVM_BUILD_BENCHMARKS, but it probably makes sense when we have more benchmarks (ideally, across different LLVM parts).

Hmm, I thought that was already the case. Isn't the benchmark stuff only not-built on the windows bots?

LLVM_BUILD_BENCHMARKS (which adds benchmarks to the list of default targets) is OFF on all platforms by default (although LLVM_INCLUDE_BENCHMARKS which produces build targets in the first place is enabled on Windows now, thanks to @rnk; it seems that the stage 2 bug we encountered was fixed). Hence, the benchmark library itself is built on all platforms (same as gtest library), but assuming that buildbots run ninja/make this only compiles default targets (which exclude IndexBenchmark due to LLVM_BUILD_BENCHMARKS being OFF by default). Hence, we should either ask buildbot owners to set LLVM_BUILD_BENCHMARKS to ON or don't exclude benchmarks from the list of default targets (which might result in some noise due to the full build time increase and is probably not what we want to do.

Looks good, thanks!

While we're here: I'm wondering whether we should also introduce very basic test which would just run clangd-indexer since it doesn't depend on benchmarks and would be run on all buildbots.

Isn't that this test?

Yes, but this test checks both. As mentioned, buildbots don't build benchmarks by default and hence this testcase is not actually run anywhere at the moment.

Sorry, that's wrong. It *is* run on every buildbot at the moment, but IndexBenchmark binary doesn't exist on any buildbot IIUC, so the second part of the test is not being run. If you add the dependency on LLVM_BUILD_BENCHMARKS, then the whole test would be disabled.+

This revision now requires review to proceed.Dec 2 2019, 2:23 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 2 2019, 2:23 AM
Herald added a subscriber: usaxena95. · View Herald Transcript