This is an archive of the discontinued LLVM Phabricator instance.

[ORC] Work around AIX build compiler: Replace lambda; NFC
ClosedPublic

Authored by hubert.reinterpretcast on Jul 22 2021, 8:12 AM.

Details

Summary

By replacing a lambda expression with a functor class instance, this
patch works around an issue encountered on AIX where the IBM XL compiler
appears to make no progress for many hours.

Diff Detail

Event Timeline

hubert.reinterpretcast requested review of this revision.Jul 22 2021, 8:12 AM
Herald added a project: Restricted Project. · View Herald TranscriptJul 22 2021, 8:12 AM
jsji accepted this revision.Jul 22 2021, 8:37 PM

LGTM to unblock the buildbots first. Thanks for the workaround.

This revision is now accepted and ready to land.Jul 22 2021, 8:37 PM
jsji added inline comments.Jul 22 2021, 8:37 PM
llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
449

Please keep this FIXME.

llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
449

Good catch. Will do.

lhames accepted this revision.Jul 22 2021, 11:38 PM
lhames added inline comments.
llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
468–479

Is there a bug filed against the AIX compiler that we could cite here?

In any case, please add a comment explaining that this was broken out due to an AIX compiler bug, and should be turned back into a lambda once the bug is fixed.

Otherwise LGTM.

lhames added inline comments.Jul 22 2021, 11:39 PM
llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
467

Somehow I missed this. ;)

If there's a bug number for that it would be good to include it, otherwise everything's good to go. :)

hubert.reinterpretcast marked an inline comment as done.Jul 23 2021, 6:02 AM
hubert.reinterpretcast added inline comments.
llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
467

Thanks @lhames. We have a bug number (168299) in an internal bug tracker. Since it is not accessible to most people, I think it is better to omit it from the code comment.

This revision was landed with ongoing or failed builds.Jul 23 2021, 7:12 AM
This revision was automatically updated to reflect the committed changes.
hubert.reinterpretcast marked an inline comment as done.Jul 23 2021, 7:18 AM