This patch modifies OpenMPIRBuilder::createTask to accept its
Dependencies vector by value instead of by reference. This is
necessary because the PostOutlineCB lambda that uses this Dependencies
vector may outlive the original Dependencies vector.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Assuming this was not triggered because we never used Dependencies vector before and no other PostOutlineCB took an option (with a reference) like this.
Comment Actions
Please add a test case which would fail with the old implementation but passes with the new one.
Comment Actions
Yes that's right. There is no other PostOutlineCB that has a SmallVector being passed as an ArrayRef.
I have adjusted the existing test case slightly to fail with the old implementation. There isn't really any point of keeping the old test case around because it is unrealistic. The original stack-allocated DependData should not be expected to still be in scope when the PostOutlineCB lambda is called.