File tree Expand file tree Collapse file tree 1 file changed +9
-2
lines changed
llvm/lib/CodeGen/LiveDebugValues Expand file tree Collapse file tree 1 file changed +9
-2
lines changed Original file line number Diff line number Diff line change @@ -1402,9 +1402,16 @@ bool InstrRefBasedLDV::transferDebugValue(const MachineInstr &MI) {
1402
1402
if (!MI.isDebugValue ())
1403
1403
return false ;
1404
1404
1405
- assert (MI.getDebugVariable ()->isValidLocationForIntrinsic (MI.getDebugLoc ()) &&
1405
+ const DILocalVariable *Var = MI.getDebugVariable ();
1406
+ const DIExpression *Expr = MI.getDebugExpression ();
1407
+ const DILocation *DebugLoc = MI.getDebugLoc ();
1408
+ const DILocation *InlinedAt = DebugLoc->getInlinedAt ();
1409
+ assert (Var->isValidLocationForIntrinsic (DebugLoc) &&
1406
1410
" Expected inlined-at fields to agree" );
1407
1411
1412
+ DebugVariable V (Var, Expr, InlinedAt);
1413
+ DbgValueProperties Properties (MI);
1414
+
1408
1415
// If there are no instructions in this lexical scope, do no location tracking
1409
1416
// at all, this variable shouldn't get a legitimate location range.
1410
1417
auto *Scope = LS.findLexicalScope (MI.getDebugLoc ().get ());
@@ -1455,7 +1462,7 @@ bool InstrRefBasedLDV::transferDebugValue(const MachineInstr &MI) {
1455
1462
}
1456
1463
}
1457
1464
}
1458
- VTracker->defVar (MI, DbgValueProperties (MI) , DebugOps);
1465
+ VTracker->defVar (MI, Properties , DebugOps);
1459
1466
}
1460
1467
1461
1468
// If performing final tracking of transfers, report this variable definition
You can’t perform that action at this time.
0 commit comments