Lines Matching refs:DIExpression
138 void addSingleLocVar(DebugVariable Var, DIExpression *Expr, DebugLoc DL, in addSingleLocVar()
149 void addVarLoc(VarLocInsertPt Before, DebugVariable Var, DIExpression *Expr, in addVarLoc()
264 static std::pair<Value *, DIExpression *>
266 DIExpression *Expression) { in walkToAllocaAndPrependOffsetDeref()
273 Expression = DIExpression::prependOpcodes( in walkToAllocaAndPrependOffsetDeref()
276 Expression = DIExpression::append(Expression, {dwarf::DW_OP_deref}); in walkToAllocaAndPrependOffsetDeref()
284 getDerefOffsetInBytes(const DIExpression *DIExpr) { in getDerefOffsetInBytes()
679 const DIExpression *DIExpr = VarLoc.Expr; in addDef()
968 DIExpression *Expr = DIExpression::get(Ctx, std::nullopt); in run()
971 Expr = *DIExpression::createFragmentExpression( in run()
973 Expr = DIExpression::prepend(Expr, DIExpression::DerefAfter, in run()
1537 auto Emit = [this, Source, After, DL](Metadata *Val, DIExpression *Expr) { in emitDbgValue()
1567 DIExpression *Expr = Assign->getAddressExpression(); in emitDbgValue()
1574 Expr = *DIExpression::createFragmentExpression( in emitDbgValue()
1639 DIExpression *DIE = DIExpression::get(I.getContext(), std::nullopt); in processUntaggedInstruction()
1641 auto R = DIExpression::createFragmentExpression(DIE, Frag->OffsetInBits, in processUntaggedInstruction()
1650 DIE = DIExpression::prependOpcodes(DIE, Ops, /*StackValue=*/false, in processUntaggedInstruction()
2091 static bool fullyContains(DIExpression::FragmentInfo A, in fullyContains()
2092 DIExpression::FragmentInfo B) { in fullyContains()
2183 std::optional<DIExpression::FragmentInfo> FragInfo; in buildOverlapMapAndRecordDeclares()
2241 DIExpression::FragmentInfo Frag = It->getFragmentOrDefault(); in buildOverlapMapAndRecordDeclares()
2251 DIExpression::FragmentInfo OtherFrag = OtherIt->getFragmentOrDefault(); in buildOverlapMapAndRecordDeclares()
2415 VarLoc.Expr = DIExpression::get(Fn.getContext(), std::nullopt); in run()
2536 DIExpression::FragmentInfo Fragment = in removeRedundantDbgLocsUsingBackwardScan()
2538 DIExpression::FragmentInfo(SizeInBits, 0)); in removeRedundantDbgLocsUsingBackwardScan()
2585 DenseMap<DebugVariable, std::pair<RawLocationWrapper, DIExpression *>> in removeRedundantDbgLocsUsingForwardScan()
2655 SmallDenseMap<DebugAggregate, SmallDenseSet<DIExpression::FragmentInfo>> in removeUndefDbgLocsFromEntryBlock()
2669 return DIExpression::fragmentsOverlap(Frag, V.getFragmentOrDefault()); in removeUndefDbgLocsFromEntryBlock()
2674 DenseMap<DebugVariable, std::pair<Value *, DIExpression *>> VariableMap; in removeUndefDbgLocsFromEntryBlock()