This is an archive of the discontinued LLVM Phabricator instance.

[zorg] Add polly test-suite builder.
ClosedPublic

Authored by Meinersbur on Apr 27 2020, 12:45 PM.

Details

Summary

Add a polly build for compiling and running the test-suite. AFAIK, this will be the only builder running the test-suite on x86. I had to fix a few problems to make the test-suite run smoothly again.

An experimental version is current running at http://meinersbur.de:8011/builders/polly-x86_64-linux-test-suite .

Event Timeline

Meinersbur created this revision.Apr 27 2020, 12:45 PM

Note that I also changed some step in the current Polly builders:

  • clean-dir: RemoveDirectory
  • compile: WarningCountingShellCommand
  • check: LitTestCommand

These more specific step commands parse the output to display on buildbot's build overview page.

Meinersbur edited the summary of this revision. (Show Details)Apr 27 2020, 1:55 PM
Meinersbur edited the summary of this revision. (Show Details)
  • Use zorg's method to checkout test-suite source
gkistanova requested changes to this revision.May 8 2020, 10:24 AM

Please see inline comments.

zorg/buildbot/builders/PollyBuilder.py
17

Is the new line is missing between the arguments?

65

You do not need a step to get the builddir. This is workdir property, just use that. For example,

WithProperties("%(workdir)s/" + llvm_instdir + "/bin/clang++")

would give you a fully qualified path to the installed clang++.

114

This code will be running on the master. The path on master has nothing to do with the path on the bot which will be actually building. Here and in thew rest of similar places, please use forward slashes here as it would work everywhere.

181

Adding -vv lit flag might help troubleshooting test failures.

This revision now requires changes to proceed.May 8 2020, 10:24 AM
Meinersbur marked 3 inline comments as done.
  • Address Galina's review
Meinersbur marked an inline comment as done.May 12 2020, 8:26 PM
Meinersbur added inline comments.
zorg/buildbot/builders/PollyBuilder.py
65

I copied the get_builddir step from ClangBuilder. Thanks for the hint.

It is/was wrapped into WithProperties when the step was added.

114

llvm_objdir is set to "llvm.obj" at the beginning of this function, i.e. this is a path relative to the workdir on slave, as it was used already by all the other steps. I changed it to string concatenation as suggested.

Personally, I think os.path.join more idiomatic as it e.g. also works on Windows and if any argument is an absolute path.

181

-vv only adds additional output when execute_external is used, which seems only true for ABI-Testsuite.

This revision is now accepted and ready to land.May 19 2020, 9:28 PM
This revision was automatically updated to reflect the committed changes.