aeubanks added a comment. Thanks for looking into this!
Can you upload the diff with full context (e.g. use `diff -U 9999` or use arcanist to upload)? ================ Comment at: clang/lib/CodeGen/BackendUtil.cpp:1153 + // Sets legacy pass manager OptBisect to the same one as npm so passes are properly skipped + TheModule->getContext().setOptPassGate(SI.getOptBisect()); + ---------------- I took another look, if you look in `LLVMContextImpl::getOptPassGate`, it says the `OptBisect` instance must outlive the `LLVMContext`, which isn't true here. There's actually a global `OptBisect` there that we should use. So I think we should go the opposite way. The NPM's StandardInstrumentations shouldn't contain its own `OptBisect`, it should inspect the IR it's receiving to get the IR's `LLVMContext` and call `LLVMContext::getOptPassGate()`. e.g. after unwrapping `Any` to `Function *`, `F->getContext().getOptPassGate()`. ================ Comment at: clang/test/CodeGen/new-pass-manager-O1-opt-bisect.c:1 +// Test NPM with -O1/opt-bisect +// ---------------- Something like "Make sure opt-bisect works through both pass managers" is probably better. Also the test name doesn't need "O1" in it, just "new-pass-manager-opt-bisect.c" is good ================ Comment at: clang/test/CodeGen/new-pass-manager-O1-opt-bisect.c:3 +// +// RUN: %clang_cc1 -triple x86_64-linux-gnu -O1 -fexperimental-new-pass-manager %s -fdebug-pass-manager -mllvm -opt-bisect-limit=-1 -emit-llvm -o /dev/null 2>&1 | FileCheck %s + ---------------- don't need this ================ Comment at: clang/test/CodeGen/new-pass-manager-O1-opt-bisect.c:3 +// +// RUN: %clang_cc1 -triple x86_64-linux-gnu -O1 -fexperimental-new-pass-manager %s -fdebug-pass-manager -mllvm -opt-bisect-limit=-1 -emit-llvm -o /dev/null 2>&1 | FileCheck %s + ---------------- aeubanks wrote: > don't need this does this actually run the codegen passes? I thought we needed `-emit-obj`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92897/new/ https://reviews.llvm.org/D92897 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits