[llvm] r328687 - [ORC] Fix ORC on platforms without indirection support.
Lang Hames via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 28 07:44:22 PDT 2018
That's ok. I missed that too. I will revert now and add a fix it if it has
not already been reverted.
-- Lang.
On Tue, Mar 27, 2018 at 10:46 PM, Andres Freund <andres at anarazel.de> wrote:
> Hi,
>
> On 2018-03-28 03:41:45 -0000, Lang Hames via llvm-commits wrote:
> > Author: lhames
> > Date: Tue Mar 27 20:41:45 2018
> > New Revision: 328687
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=328687&view=rev
> > Log:
> > [ORC] Fix ORC on platforms without indirection support.
> >
> > Previously this crashed because a nullptr (returned by
> > createLocalIndirectStubsManagerBuilder() on platforms without
> > indirection support) functor was unconditionally invoked.
> >
> > Patch by Andres Freund. Thanks Andres!
> > namespace llvm {
> > @@ -59,15 +61,20 @@ public:
> > // If we found a TargetMachine, check that it's one that Orc
> supports.
> > const Triple& TT = TM->getTargetTriple();
> >
> > - if ((TT.getArch() != Triple::x86_64 && TT.getArch() !=
> Triple::x86) ||
> > - TT.isOSWindows())
> > - TM = nullptr;
> > + // Target can JIT?
> > + SupportsJIT = TM->getTarget().hasJIT();
> > + // Use ability to create callback manager to detect whether Orc
> > + // has indirection support on this platform. This way the test
> > + // and Orc code do not get out of sync.
> > + SupportsIndirection = !!orc::createLocalCompileCallbackManager(TT,
> 0);
> > }
>
> It seems this was, for a reason unknown to me, overly aggressive. The
> windows check appears to have been critical:
> http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_
> 64-scei-ps4-windows10pro-fast/builds/16121/steps/test/logs/stdio
>
> Sorry for that.
>
> - Andres
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180328/435a1c2e/attachment.html>
More information about the llvm-commits
mailing list