Home
last modified time | relevance | path

Searched refs:DIExpression (Results 1 – 25 of 84) sorted by relevance

1234

/openbsd-src/gnu/llvm/llvm/lib/IR/
H A DDebugInfoMetadata.cpp36 const DIExpression::FragmentInfo DebugVariable::DefaultFragment = {
416 isa<DIExpression>(CB)) && in getCount()
425 if (auto *MD = dyn_cast<DIExpression>(CB)) in getCount()
437 isa<DIExpression>(LB)) && in getLowerBound()
446 if (auto *MD = dyn_cast<DIExpression>(LB)) in getLowerBound()
458 isa<DIExpression>(UB)) && in getUpperBound()
467 if (auto *MD = dyn_cast<DIExpression>(UB)) in getUpperBound()
479 isa<DIExpression>(ST)) && in getStride()
488 if (auto *MD = dyn_cast<DIExpression>(ST)) in getStride()
513 assert((isa<DIVariable>(CB) || isa<DIExpression>(CB)) && in getCount()
[all …]
H A DDIBuilder.cpp299 DIExpression *StrLocationExp) { in createStringType()
306 DIExpression *StringLengthExp, in createStringType()
307 DIExpression *StrLocationExp) { in createStringType()
583 PointerUnion<DIExpression *, DIVariable *> DL, in createArrayType() argument
584 PointerUnion<DIExpression *, DIVariable *> AS, in createArrayType()
585 PointerUnion<DIExpression *, DIVariable *> AL, in createArrayType()
586 PointerUnion<DIExpression *, DIVariable *> RK) { in createArrayType()
591 DL.is<DIExpression *>() ? (Metadata *)DL.get<DIExpression *>() in createArrayType()
593 AS.is<DIExpression *>() ? (Metadata *)AS.get<DIExpression *>() in createArrayType()
595 AL.is<DIExpression *>() ? (Metadata *)AL.get<DIExpression *>() in createArrayType()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/AsmPrinter/
H A DDwarfExpression.h37 DIExpression::expr_op_iterator Start, End;
40 DIExpressionCursor(const DIExpression *Expr) { in DIExpressionCursor()
55 std::optional<DIExpression::ExprOperand> take() { in take()
65 std::optional<DIExpression::ExprOperand> peek() const { in peek()
72 std::optional<DIExpression::ExprOperand> peekNext() const { in peekNext()
86 DIExpression::expr_op_iterator begin() const { return Start; } in begin()
87 DIExpression::expr_op_iterator end() const { return End; } in end()
90 std::optional<DIExpression::FragmentInfo> getFragmentInfo() const { in getFragmentInfo()
91 return DIExpression::getFragmentInfo(Start, End); in getFragmentInfo()
156 void setLocation(const MachineLocation &Loc, const DIExpression *DIExpr);
[all …]
H A DDebugLocEntry.h113 const DIExpression *Expression;
120 DbgValueLoc(const DIExpression *Expr, ArrayRef<DbgValueLocEntry> Locs) in DbgValueLoc()
124 DbgValueLoc(const DIExpression *Expr, ArrayRef<DbgValueLocEntry> Locs, in DbgValueLoc()
129 assert(cast<DIExpression>(Expr)->isValid() || in DbgValueLoc()
137 DbgValueLoc(const DIExpression *Expr, DbgValueLocEntry Loc) in DbgValueLoc()
155 if (!DIExpression::isEqualExpression(Expression, ThisIsIndirect, in isEquivalent()
169 const DIExpression *getExpression() const { return Expression; } in getExpression()
H A DDwarfExpression.cpp324 if (any_of(ExprCursor, [](DIExpression::ExprOperand Op) -> bool { in addMachineRegExpression()
398 const DIExpression *DIExpr) { in setLocation()
497 std::optional<DIExpression::ExprOperand> PrevConvertOp; in addExpression()
673 void DwarfExpression::addFragmentOffset(const DIExpression *Expr) { in addFragmentOffset()
H A DDwarfCompileUnit.cpp210 const DIExpression *Expr = GE.Expr; in addLocationAttribute()
220 DIExpression::SignedOrUnsignedConstant::UnsignedConstant == in addLocationAttribute()
254 const DIExpression *NewExpr = in addLocationAttribute()
255 DIExpression::extractAddressClass(Expr, LocalNVPTXAddressSpace); in addLocationAttribute()
787 const DIExpression *Expr = DV.getSingleExpression(); in constructVariableDIEImpl()
855 const DIExpression *Expr = Fragment.Expr; in constructVariableDIEImpl()
873 const DIExpression *NewExpr = in constructVariableDIEImpl()
874 DIExpression::extractAddressClass(Expr, LocalNVPTXAddressSpace); in constructVariableDIEImpl()
1482 const DIExpression *DIExpr = DV.getSingleExpression(); in addComplexAddress()
H A DDwarfDebug.cpp235 const DIExpression *Expr = MI->getDebugExpression(); in getDebugLocValue()
595 const DIExpression *Expr;
605 static const DIExpression *combineDIExpressions(const DIExpression *Original, in combineDIExpressions()
606 const DIExpression *Addition) { in combineDIExpressions()
611 const DIExpression *CombinedExpr = in combineDIExpressions()
612 (Elts.size() > 0) ? DIExpression::append(Original, Elts) : Original; in combineDIExpressions()
619 static void finishCallSiteParams(ValT Val, const DIExpression *Expr, in finishCallSiteParams()
634 const DIExpression *CombinedExpr = in finishCallSiteParams()
651 const DIExpression *Expr, in addToFwdRegWorklist()
666 const DIExpression *CombinedExpr = combineDIExpressions(Expr, Param.Expr); in addToFwdRegWorklist()
[all …]
/openbsd-src/gnu/llvm/llvm/include/llvm/IR/
H A DDIBuilder.h85 DIExpression *Expr, const DILocation *DL,
95 DIExpression *Expr, const DILocation *DL,
102 DIExpression *Expr, const DILocation *DL,
108 DIExpression *Expr, const DILocation *DL,
232 DIExpression *StrLocationExp = nullptr);
240 DIExpression *StringLengthExp,
241 DIExpression *StrLocationExp = nullptr);
555 PointerUnion<DIExpression *, DIVariable *> DataLocation = nullptr,
556 PointerUnion<DIExpression *, DIVariable *> Associated = nullptr,
557 PointerUnion<DIExpression *, DIVariable *> Allocated = nullptr,
[all …]
H A DDebugInfoMetadata.h385 typedef PointerUnion<ConstantInt *, DIVariable *, DIExpression *> BoundType;
432 using BoundType = PointerUnion<DIVariable *, DIExpression *>;
940 DIExpression *getStringLengthExp() const { in getStringLengthExp()
941 return cast_or_null<DIExpression>(getRawStringLengthExp()); in getStringLengthExp()
944 DIExpression *getStringLocationExp() const { in getStringLocationExp()
945 return cast_or_null<DIExpression>(getRawStringLocationExp()); in getStringLocationExp()
1242 DIExpression *getDataLocationExp() const { in getDataLocationExp()
1243 return dyn_cast_or_null<DIExpression>(getRawDataLocation()); in getDataLocationExp()
1249 DIExpression *getAssociatedExp() const { in getAssociatedExp()
1250 return dyn_cast_or_null<DIExpression>(getRawAssociated()); in getAssociatedExp()
[all …]
H A DIntrinsicInst.h244 DIExpression *NewExpr);
250 void setExpression(DIExpression *NewExpr) { in setExpression()
292 DIExpression *getExpression() const { in getExpression()
293 return cast<DIExpression>(getRawExpression()); in getExpression()
320 std::optional<DIExpression::FragmentInfo> getFragment() const { in getFragment()
434 DIExpression *getAddressExpression() const { in getAddressExpression()
435 return cast<DIExpression>(getRawAddressExpression()); in getAddressExpression()
437 void setAddressExpression(DIExpression *NewExpr) { in setAddressExpression()
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DTargetRegisterInfo.cpp650 DIExpression::appendOffset(Ops, Offset.getFixed()); in getOffsetOpcodes()
653 DIExpression *
654 TargetRegisterInfo::prependOffsetExpression(const DIExpression *Expr, in prependOffsetExpression()
658 ~(DIExpression::DerefBefore | DIExpression::DerefAfter | in prependOffsetExpression()
659 DIExpression::StackValue | DIExpression::EntryValue)) == 0 && in prependOffsetExpression()
662 if (PrependFlags & DIExpression::DerefBefore) in prependOffsetExpression()
665 if (PrependFlags & DIExpression::DerefAfter) in prependOffsetExpression()
667 return DIExpression::prependOpcodes(Expr, OffsetExpr, in prependOffsetExpression()
668 PrependFlags & DIExpression::StackValue, in prependOffsetExpression()
669 PrependFlags & DIExpression::EntryValue); in prependOffsetExpression()
H A DAssignmentTrackingAnalysis.cpp107 void addSingleLocVar(DebugVariable Var, DIExpression *Expr, DebugLoc DL, in addSingleLocVar()
118 void addVarLoc(Instruction *Before, DebugVariable Var, DIExpression *Expr, in addVarLoc()
213 static std::pair<Value *, DIExpression *>
215 DIExpression *Expression) { in walkToAllocaAndPrependOffsetDeref()
222 Expression = DIExpression::prependOpcodes( in walkToAllocaAndPrependOffsetDeref()
225 Expression = DIExpression::append(Expression, {dwarf::DW_OP_deref}); in walkToAllocaAndPrependOffsetDeref()
233 getDerefOffsetInBytes(const DIExpression *DIExpr) { in getDerefOffsetInBytes()
582 const DIExpression *DIExpr = VarLoc.Expr; in addDef()
857 DIExpression *Expr = DIExpression::get(Ctx, std::nullopt); in run()
858 Expr = *DIExpression::createFragmentExpression( in run()
[all …]
H A DCodeGenCommonISel.cpp224 auto ExtOps = DIExpression::getExtOps(FromLLT.getSizeInBits(), in getSalvageOpsForTrunc()
268 const DIExpression *SalvagedExpr = DbgMI->getDebugExpression(); in salvageDebugInfoForDbgValue()
274 SalvagedExpr = DIExpression::appendOpsToArg(SalvagedExpr, Ops, 0, true); in salvageDebugInfoForDbgValue()
H A DLiveDebugVariables.cpp104 const DIExpression &Expr) in DbgVariableValue()
119 DIExpression::replaceArg(Expression, OpIdx, DuplicatingIdx); in DbgVariableValue()
141 DIExpression::get(Expr.getContext(), {dwarf::DW_OP_LLVM_arg, 0}); in DbgVariableValue()
143 Expression = *DIExpression::createFragmentExpression( in DbgVariableValue()
177 const DIExpression *getExpression() const { return Expression; } in getExpression()
255 const DIExpression *Expression = nullptr;
289 const std::optional<DIExpression::FragmentInfo> Fragment;
322 std::optional<DIExpression::FragmentInfo> Fragment, DebugLoc L, in UserValue()
414 bool IsList, const DIExpression &Expr) { in addDef()
586 std::optional<DIExpression::FragmentInfo> Fragment,
[all …]
H A DMachineInstr.cpp684 if (!DIExpression::isEqualExpression( in isEquivalentDbgInstr()
879 const DIExpression *MachineInstr::getDebugExpression() const { in getDebugExpression()
880 return cast<DIExpression>(getDebugExpressionOp().getMetadata()); in getDebugExpression()
2122 assert(cast<DIExpression>(Expr)->isValid() && "not an expression"); in BuildMI()
2138 assert(cast<DIExpression>(Expr)->isValid() && "not an expression"); in BuildMI()
2193 static const DIExpression *
2199 const DIExpression *Expr = MI.getDebugExpression(); in computeExprForSpill()
2203 Expr = DIExpression::prepend(Expr, DIExpression::DerefBefore); in computeExprForSpill()
2210 Expr = DIExpression::appendOpsToArg(Expr, Ops, OpIdx); in computeExprForSpill()
2215 static const DIExpression *computeExprForSpill(const MachineInstr &MI, in computeExprForSpill()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/SelectionDAG/
H A DSDNodeDbgValue.h24 class DIExpression; variable
147 DIExpression *Expr;
156 SDDbgValue(BumpPtrAllocator &Alloc, DIVariable *Var, DIExpression *Expr, in SDDbgValue()
183 DIExpression *getExpression() const { return Expr; } in getExpression()
H A DSelectionDAGBuilder.h61 class DIExpression; variable
126 DIExpression *getExpression() const { in getExpression()
358 const DIExpression *Expr);
372 DIExpression *Expr, DebugLoc DbgLoc, unsigned Order,
680 DIExpression *Expr, DILocation *DL,
693 DIExpression *Expr, const DebugLoc &dl,
H A DInstrEmitter.cpp764 const DIExpression *Expr = (DIExpression *)SD->getExpression(); in EmitDbgInstrRef()
791 Expr = DIExpression::append(Expr, dwarf::DW_OP_deref); in EmitDbgInstrRef()
795 Expr = DIExpression::convertToVariadicExpression(Expr); in EmitDbgInstrRef()
895 const DIExpression *Expr = in EmitDbgNoLocation()
896 DIExpression::convertToUndefExpression(SD->getExpression()); in EmitDbgNoLocation()
906 DIExpression *Expr = SD->getExpression(); in EmitDbgValueList()
922 DIExpression *Expr = SD->getExpression(); in EmitDbgValueFromSingleOp()
/openbsd-src/gnu/llvm/llvm/lib/Target/NVPTX/
H A DNVPTXPrologEpilogPass.cpp79 const DIExpression *DIExpr = MI.getDebugExpression(); in runOnMachineFunction()
81 … DIExpr = TRI.prependOffsetExpression(MI.getDebugExpression(), DIExpression::ApplyOffset, Offset); in runOnMachineFunction()
86 DIExpr = DIExpression::appendOpsToArg(DIExpr, Ops, OpIdx); in runOnMachineFunction()
/openbsd-src/gnu/llvm/llvm/docs/
H A DAssignmentTracking.md61 DIExpression *ValueExpression,
65 DIExpression *AddressExpression)
73 in `DIExpression`s, so as an implementation quirk the `FragmentInfo` for
105 …data i1 undef, metadata !14, metadata !DIExpression(), metadata !13, metadata i32* %a.addr, metada…
107 …tadata i32 %a, metadata !14, metadata !DIExpression(), metadata !16, metadata i32* %a.addr, metada…
217 `llvm.dbg.declare` location modified by a `DIExpression`, e.g. when the
219 `llvm.dbg.declare` using `DIExpression(DW_OP_deref)`. See `indirectReturn` in
H A DHowToUpdateDebugInfo.rst164 instruction by describing its effect as a ``DIExpression``.
274 … call void @llvm.dbg.value(metadata i32** %x.addr, metadata !9, metadata !DIExpression()), !dbg !12
277 call void @llvm.dbg.value(metadata i32* %0, metadata !11, metadata !DIExpression()), !dbg !14
445 DBG_VALUE %0(s32), $noreg, !9, !DIExpression(), debug-location !12
447 DBG_VALUE %1(s32), $noreg, !11, !DIExpression(), debug-location !13
449 DBG_VALUE %2(s32), $noreg, !9, !DIExpression(), debug-location !14
451 …DBG_VALUE %3(s32), $noreg, !9, !DIExpression(), debug-location !DILocation(line: 4, column: 1, sco…
453 …DBG_VALUE %4(s32), $noreg, !9, !DIExpression(), debug-location !DILocation(line: 5, column: 1, sco…
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/LiveDebugValues/
H A DInstrRefBasedImpl.h238 DbgValueProperties(const DIExpression *DIExpr, bool Indirect, bool IsVariadic)
252 return DIExpression::isEqualExpression(DIExpr, Indirect, Other.DIExpr,
269 const DIExpression *DIExpr;
957 std::pair<const DILocalVariable *, DIExpression::FragmentInfo>;
959 DenseMap<FragmentOfVar, SmallVector<DIExpression::FragmentInfo, 1>>;
982 VLocTracker(const OverlapMap &O, const DIExpression *EmptyExpr)
1014 std::optional<DIExpression::FragmentInfo> OptFragmentInfo = FragmentInfo;
1041 using FragmentInfo = DIExpression::FragmentInfo;
1042 using OptFragmentInfo = std::optional<DIExpression::FragmentInfo>;
1090 const DIExpression *EmptyExpr;
H A DVarLocBasedImpl.cpp293 using FragmentInfo = DIExpression::FragmentInfo;
294 using OptFragmentInfo = std::optional<DIExpression::FragmentInfo>;
330 const DIExpression *Expr;
440 Expr = DIExpression::replaceArg(Expr, OpIdx, DuplicatingIdx); in VarLoc()
476 const DIExpression *EntryExpr, Register Reg) { in CreateEntryLoc()
491 const DIExpression *EntryExpr) { in CreateEntryBackupLoc()
504 const DIExpression *EntryExpr, in CreateEntryCopyBackupLoc()
556 const DIExpression *DIExpr = Expr; in BuildDbgValue()
583 auto Deref = Indirect ? DIExpression::DerefAfter : 0; in BuildDbgValue()
585 DIExpr, DIExpression::ApplyOffset | Deref, in BuildDbgValue()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/Target/X86/
H A DX86OptimizeLEAs.cpp579 const DIExpression *Expr = MI.getDebugExpression(); in replaceDebugValue()
583 DIExpression::prepend(Expr, DIExpression::StackValue, AddrDispShift); in replaceDebugValue()
588 DIExpression::appendOffset(Ops, AddrDispShift); in replaceDebugValue()
591 Expr = DIExpression::appendOpsToArg(Expr, Ops, OpIdx); in replaceDebugValue()
/openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/
H A DDebugHandlerBase.h40 std::optional<llvm::DIExpression::FragmentInfo> FragmentInfo;

1234