here is the IR code
define dso_local void @func_use_scene_0111() #0 !dbg !7 {
entry:
%bb = alloca %struct._BTS_Node, align 8
%s = alloca i32, align 4
call void @llvm.dbg.declare(metadata %struct._BTS_Node* %bb, metadata !11, metadata !DIExpression()), !dbg !57
call void @llvm.dbg.declare(metadata i32* %s, metadata !58, metadata !DIExpression()), !dbg !59
%nodeId = getelementptr inbounds %struct._BTS_Node, %struct._BTS_Node* %bb, i32 0, i32 0, !dbg !60
%0 = load i32, i32* %nodeId, align 8, !dbg !60
store i32 %0, i32* %s, align 4, !dbg !59
ret void, !dbg !61
}
now I get the value assigned to structAlloc :%bb = alloca %struct._BTS_Node, align 8
then ,I call function getStructMataData :
static void getStructMataData(Value *structAlloc){
for (auto *U : structAlloc->users()){
outs() << *U << "\n";
}
}
the results print as follow
%nodeId = getelementptr inbounds %struct._BTS_Node, %struct._BTS_Node* %bb, i32 0, i32 0, !dbg !60
my question is
why the inst:call void @llvm.dbg.declare(metadata %struct._BTS_Node* %bb, metadata !11, metadata !DIExpression()), !dbg !57 can not print?
how to get this call inst?
thankyou for your reply