Index: lib/IR/Verifier.cpp =================================================================== --- lib/IR/Verifier.cpp +++ lib/IR/Verifier.cpp @@ -4491,6 +4491,13 @@ &DII, BB, F, Var, Var->getScope()->getSubprogram(), Loc, Loc->getScope()->getSubprogram()); + if (auto *Def = dyn_cast_or_null(DII.getVariableLocation())) { + bool DefBeforeUse = DT.dominates(Def, &DII); + AssertDI(DefBeforeUse, + "debug info intrinsic uses variable before its definition", &DII, + BB, F); + } + verifyFnArgs(DII); }