@@ -734,8 +734,7 @@ class SILInstruction : public llvm::ilist_node<SILInstruction> {
734734 // / Returns true if the instruction is only relevant for debug
735735 // / informations and has no other impact on program semantics.
736736 bool isDebugInstruction () const {
737- return getKind () == SILInstructionKind::DebugValueInst ||
738- getKind () == SILInstructionKind::DebugValueAddrInst;
737+ return getKind () == SILInstructionKind::DebugValueInst;
739738 }
740739
741740 // / Returns true if the instruction is a meta instruction which is
@@ -1720,8 +1719,8 @@ class UnaryInstructionWithTypeDependentOperandsBase
17201719};
17211720
17221721// / Holds common debug information about local variables and function
1723- // / arguments that are needed by DebugValueInst, DebugValueAddrInst ,
1724- // / AllocStackInst, and AllocBoxInst.
1722+ // / arguments that are needed by DebugValueInst, AllocStackInst ,
1723+ // / and AllocBoxInst.
17251724struct SILDebugVariable {
17261725 StringRef Name;
17271726 unsigned ArgNo : 16 ;
@@ -4741,58 +4740,6 @@ class DebugValueInst final
47414740 }
47424741};
47434742
4744- // / Define the start or update to a symbolic variable value (for address-only
4745- // / types) .
4746- class DebugValueAddrInst final
4747- : public UnaryInstructionBase<SILInstructionKind::DebugValueAddrInst,
4748- NonValueInstruction>,
4749- private SILDebugVariableSupplement,
4750- private llvm::TrailingObjects<DebugValueAddrInst, SILType, SILLocation,
4751- const SILDebugScope *, SILDIExprElement,
4752- char > {
4753- friend TrailingObjects;
4754- friend SILBuilder;
4755-
4756- TailAllocatedDebugVariable VarInfo;
4757-
4758- DebugValueAddrInst (SILDebugLocation DebugLoc, SILValue Operand,
4759- SILDebugVariable Var);
4760- static DebugValueAddrInst *create (SILDebugLocation DebugLoc,
4761- SILValue Operand, SILModule &M,
4762- SILDebugVariable Var);
4763-
4764- SIL_DEBUG_VAR_SUPPLEMENT_TRAILING_OBJS_IMPL ()
4765-
4766- public:
4767- // / Return the underlying variable declaration that this denotes,
4768- // / or null if we don't have one.
4769- VarDecl *getDecl () const ;
4770- // / Return the debug variable information attached to this instruction.
4771- Optional<SILDebugVariable> getVarInfo () const {
4772- Optional<SILType> AuxVarType;
4773- Optional<SILLocation> VarDeclLoc;
4774- const SILDebugScope *VarDeclScope = nullptr ;
4775- if (HasAuxDebugVariableType)
4776- AuxVarType = *getTrailingObjects<SILType>();
4777-
4778- if (hasAuxDebugLocation ())
4779- VarDeclLoc = *getTrailingObjects<SILLocation>();
4780- if (hasAuxDebugScope ())
4781- VarDeclScope = *getTrailingObjects<const SILDebugScope *>();
4782-
4783- llvm::ArrayRef<SILDIExprElement> DIExprElements (
4784- getTrailingObjects<SILDIExprElement>(), NumDIExprOperands);
4785-
4786- return VarInfo.get (getDecl (), getTrailingObjects<char >(), AuxVarType,
4787- VarDeclLoc, VarDeclScope, DIExprElements);
4788- }
4789-
4790- void setDebugVarScope (const SILDebugScope *NewDS) {
4791- if (hasAuxDebugScope ())
4792- *getTrailingObjects<const SILDebugScope *>() = NewDS;
4793- }
4794- };
4795-
47964743// / An abstract class representing a load from some kind of reference storage.
47974744template <SILInstructionKind K>
47984745class LoadReferenceInstBase
0 commit comments