[libcxx-commits] [PATCH] D111359: [libc++][CI] Add AIX pipeline config

David Tenty via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Oct 19 12:40:28 PDT 2021


daltenty marked an inline comment as done.
daltenty added a comment.

> I see that you currently have a single aix builder, and it takes about 45 minutes to run the tests. I can imagine that becoming a bottleneck -- do you think there is any way we could increase the capacity on aix builders?

Let me see what I can do to tune the build machine, I'll try putting the build in a ramdisk and a few other tricks (I'll see what I can do about getting more resources, but that might be tougher). We might be able to retire some older builders on the same machine as well.

> Also, you could add AIX to the set of supported platforms in libcxx/docs/index.rst in this commit, since you are adding a CI job for it.

I'll add the build compiler were testing here as well if that's ok with you.

> Finally, I assume there's a commitment to trying to fix the remaining failures on that platform?

We're actively looking in to these  known failures and have queued up patches to address quite a few of them (including D112087 <https://reviews.llvm.org/D112087> and D112086 <https://reviews.llvm.org/D112086> posted already). We've been posting them in small batches though so as not to bog down reviewers. We intend to keep making continual progress on this queue in the near future.



================
Comment at: libcxx/utils/ci/buildkite-pipeline.yml:693
+    env:
+        OBJECT_MODE: "32"
+    agents:
----------------
ldionne wrote:
> Is it possible to handle that by using a different target triple instead? That would be consistent with what we try to do elsewhere.
That's rather difficult at the moment unfortunately. While setting the target triple will work just fine for the compile steps, the rest of the platform toolchain looks at this env (or explicit mode flags) to decide whether we are targeting 32 or 64 bit on AIX, and fails on any non-matching inputs, so you'll just get a bunch of failures from `ld` and `ar`.  Between CMake and the clang driver, we have to teach it to pass the appropriate mode flags in a lot of place still for this to work cleanly.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111359/new/

https://reviews.llvm.org/D111359



More information about the libcxx-commits mailing list