[llvm] [RemoveDIs][NFC] Introduce DbgRecord base class [1/3] (PR #78252)
Orlando Cazalet-Hyams via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 20 03:33:03 PST 2024
================
@@ -30,16 +31,45 @@ DPValue::DPValue(const DbgVariableIntrinsic *DVI)
}
DPValue::DPValue(const DPValue &DPV)
- : DebugValueUser(DPV.getRawLocation()),
- Variable(DPV.getVariable()), Expression(DPV.getExpression()),
- DbgLoc(DPV.getDebugLoc()), Type(DPV.getType()) {}
+ : DbgRecord(ValueKind, DPV.getDebugLoc()),
+ DebugValueUser(DPV.getRawLocation()), Type(DPV.getType()),
+ Variable(DPV.getVariable()), Expression(DPV.getExpression()) {}
DPValue::DPValue(Metadata *Location, DILocalVariable *DV, DIExpression *Expr,
const DILocation *DI, LocationType Type)
- : DebugValueUser(Location), Variable(DV), Expression(Expr), DbgLoc(DI),
- Type(Type) {}
+ : DbgRecord(ValueKind, DI), DebugValueUser(Location), Type(Type),
+ Variable(DV), Expression(Expr) {}
-void DPValue::deleteInstr() { delete this; }
+void DbgRecord::deleteRecord() {
+ switch (RecordKind) {
+ case ValueKind:
+ delete cast<DPValue>(this);
+ break;
+ default:
+ llvm_unreachable("unsupported record kind");
----------------
OCHyams wrote:
Done
https://github.com/llvm/llvm-project/pull/78252
More information about the llvm-commits
mailing list