[PATCH] D78315: [mlir][Pass] Register a signal handler when generating crash reproducers.
Mehdi AMINI via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 28 21:03:19 PDT 2020
mehdi_amini added a comment.
In D78315#2008460 <https://reviews.llvm.org/D78315#2008460>, @rriddle wrote:
> In D78315#2005841 <https://reviews.llvm.org/D78315#2005841>, @mehdi_amini wrote:
>
> >
>
>
> There could be multiple pass managers running simultaneously, with different MLIRContexts.
Make sense, but then I have another question (see inline)
================
Comment at: mlir/lib/Pass/Pass.cpp:615
+ llvm::sys::SmartScopedLock<true> producerLock(*reproducerMutex);
+ assert(reproducerContext == this && "invalid context");
+ reproducerContext = nextContext;
----------------
So this seems to enforce that we always delete the stack of RecoveryReproducerContext in the order in which they were created, how does it happen? If multiple threads from the application are running different PassManagers for example?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D78315/new/
https://reviews.llvm.org/D78315
More information about the llvm-commits
mailing list