19
19
#include " llvm/ADT/ilist_node.h"
20
20
#include " llvm/ADT/iterator.h"
21
21
#include " llvm/ADT/iterator_range.h"
22
- #include " llvm/IR/DebugProgramInstruction.h"
23
22
#include " llvm/IR/Instruction.h"
24
23
#include " llvm/IR/SymbolTableListTraits.h"
25
24
#include " llvm/IR/Value.h"
@@ -57,9 +56,6 @@ class BasicBlock final : public Value, // Basic blocks are data objects also
57
56
public ilist_node_with_parent<BasicBlock, Function> {
58
57
public:
59
58
using InstListType = SymbolTableList<Instruction, ilist_iterator_bits<true >>;
60
- // / Flag recording whether or not this block stores debug-info in the form
61
- // / of intrinsic instructions (false) or non-instruction records (true).
62
- bool IsNewDbgInfoFormat;
63
59
64
60
private:
65
61
friend class BlockAddress ;
@@ -68,55 +64,6 @@ class BasicBlock final : public Value, // Basic blocks are data objects also
68
64
InstListType InstList;
69
65
Function *Parent;
70
66
71
- public:
72
- // / Attach a DPMarker to the given instruction. Enables the storage of any
73
- // / debug-info at this position in the program.
74
- DPMarker *createMarker (Instruction *I);
75
- DPMarker *createMarker (InstListType::iterator It);
76
-
77
- // / Convert variable location debugging information stored in dbg.value
78
- // / intrinsics into DPMarker / DPValue records. Deletes all dbg.values in
79
- // / the process and sets IsNewDbgInfoFormat = true. Only takes effect if
80
- // / the UseNewDbgInfoFormat LLVM command line option is given.
81
- void convertToNewDbgValues ();
82
-
83
- // / Convert variable location debugging information stored in DPMarkers and
84
- // / DPValues into the dbg.value intrinsic representation. Sets
85
- // / IsNewDbgInfoFormat = false.
86
- void convertFromNewDbgValues ();
87
-
88
- // / Ensure the block is in "old" dbg.value format (\p NewFlag == false) or
89
- // / in the new format (\p NewFlag == true), converting to the desired format
90
- // / if necessary.
91
- void setIsNewDbgInfoFormat (bool NewFlag);
92
-
93
- // / Validate any DPMarkers / DPValues attached to instructions in this block,
94
- // / and block-level stored data too (TrailingDPValues).
95
- // / \p Assert Should this method fire an assertion if a problem is found?
96
- // / \p Msg Should this method print a message to errs() if a problem is found?
97
- // / \p OS Output stream to write errors to.
98
- // / \returns True if a problem is found.
99
- bool validateDbgValues (bool Assert = true , bool Msg = false ,
100
- raw_ostream *OS = nullptr );
101
-
102
- // / Record that the collection of DPValues in \p M "trails" after the last
103
- // / instruction of this block. These are equivalent to dbg.value intrinsics
104
- // / that exist at the end of a basic block with no terminator (a transient
105
- // / state that occurs regularly).
106
- void setTrailingDPValues (DPMarker *M);
107
-
108
- // / Fetch the collection of DPValues that "trail" after the last instruction
109
- // / of this block, see \ref setTrailingDPValues. If there are none, returns
110
- // / nullptr.
111
- DPMarker *getTrailingDPValues ();
112
-
113
- // / Delete any trailing DPValues at the end of this block, see
114
- // / \ref setTrailingDPValues.
115
- void deleteTrailingDPValues ();
116
-
117
- void dumpDbgValues () const ;
118
-
119
- private:
120
67
void setParent (Function *parent);
121
68
122
69
// / Constructor.
0 commit comments