Lines Matching defs:DbgVariableRecord
31 DbgVariableRecord::DbgVariableRecord(const DbgVariableIntrinsic *DVI)
54 "Trying to create a DbgVariableRecord with an invalid intrinsic type!");
58 DbgVariableRecord::DbgVariableRecord(const DbgVariableRecord &DVR)
64 DbgVariableRecord::DbgVariableRecord(Metadata *Location, DILocalVariable *DV,
70 DbgVariableRecord::DbgVariableRecord(Metadata *Value, DILocalVariable *Variable,
82 delete cast<DbgVariableRecord>(this);
94 cast<DbgVariableRecord>(this)->print(O, IsForDebug);
107 cast<DbgVariableRecord>(this)->print(O, MST, IsForDebug);
121 return cast<DbgVariableRecord>(this)->isIdenticalToWhenDefined(
122 *cast<DbgVariableRecord>(&R));
138 return cast<DbgVariableRecord>(this)->createDebugIntrinsic(M, InsertBefore);
161 DbgVariableRecord::DbgVariableRecord(DbgVariableRecord::LocationType Type,
170 DbgVariableRecord *DbgVariableRecord::createUnresolvedDbgVariableRecord(
171 DbgVariableRecord::LocationType Type, Metadata *Val, MDNode *Variable,
174 return new DbgVariableRecord(Type, Val, Variable, Expression, AssignID,
178 DbgVariableRecord *
179 DbgVariableRecord::createDbgVariableRecord(Value *Location, DILocalVariable *DV,
182 return new DbgVariableRecord(ValueAsMetadata::get(Location), DV, Expr, DI,
186 DbgVariableRecord *DbgVariableRecord::createDbgVariableRecord(
188 const DILocation *DI, DbgVariableRecord &InsertBefore) {
194 DbgVariableRecord *DbgVariableRecord::createDVRDeclare(Value *Address,
198 return new DbgVariableRecord(ValueAsMetadata::get(Address), DV, Expr, DI,
202 DbgVariableRecord *
203 DbgVariableRecord::createDVRDeclare(Value *Address, DILocalVariable *DV,
205 DbgVariableRecord &InsertBefore) {
211 DbgVariableRecord *DbgVariableRecord::createDVRAssign(
215 return new DbgVariableRecord(ValueAsMetadata::get(Val), Variable, Expression,
220 DbgVariableRecord *DbgVariableRecord::createLinkedDVRAssign(
226 auto *NewDVRAssign = DbgVariableRecord::createDVRAssign(
233 iterator_range<DbgVariableRecord::location_op_iterator>
234 DbgVariableRecord::location_ops() const {
236 // If a Value has been deleted, the "location" for this DbgVariableRecord will
257 unsigned DbgVariableRecord::getNumVariableLocationOps() const {
263 Value *DbgVariableRecord::getVariableLocationOp(unsigned OpIdx) const {
273 "Attempted to get location operand from DbgVariableRecord with none.");
286 void DbgVariableRecord::replaceVariableLocationOp(Value *OldValue,
320 void DbgVariableRecord::replaceVariableLocationOp(unsigned OpIdx,
340 void DbgVariableRecord::addVariableLocationOps(ArrayRef<Value *> NewValues,
356 void DbgVariableRecord::setKillLocation() {
368 bool DbgVariableRecord::isKillLocation() const {
374 std::optional<DbgVariableFragmentInfo> DbgVariableRecord::getFragment() const {
378 std::optional<uint64_t> DbgVariableRecord::getFragmentSizeInBits() const {
387 return cast<DbgVariableRecord>(this)->clone();
394 DbgVariableRecord *DbgVariableRecord::clone() const {
395 return new DbgVariableRecord(*this);
403 DbgVariableRecord::createDebugIntrinsic(Module *M,
415 case DbgVariableRecord::LocationType::Declare:
418 case DbgVariableRecord::LocationType::Value:
421 case DbgVariableRecord::LocationType::Assign:
424 case DbgVariableRecord::LocationType::End:
425 case DbgVariableRecord::LocationType::Any:
429 // Create the intrinsic from this DbgVariableRecord's information, optionally
433 "DbgVariableRecord's RawLocation should be non-null.");
474 Value *DbgVariableRecord::getAddress() const {
485 DIAssignID *DbgVariableRecord::getAssignID() const {
489 void DbgVariableRecord::setAssignId(DIAssignID *New) {
493 void DbgVariableRecord::setKillAddress() {
498 bool DbgVariableRecord::isKillAddress() const {
735 // Clone each DbgVariableRecord and insert into StoreDbgVariableRecords;