1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
use prelude::LLVMBool;
#[repr(C)]
pub enum LLVMRemarkType {
LLVMRemarkTypeUnknown,
LLVMRemarkTypePassed,
LLVMRemarkTypeMissed,
LLVMRemarkTypeAnalysis,
LLVMRemarkTypeAnalysisFPCommute,
LLVMRemarkTypeAnalysisAliasing,
LLVMRemarkTypeFailure,
}
pub enum LLVMRemarkOpaqueString {}
pub type LLVMRemarkStringRef = *mut LLVMRemarkOpaqueString;
extern "C" {
pub fn LLVMRemarkStringGetData(String: LLVMRemarkStringRef) -> *const ::libc::c_char;
pub fn LLVMRemarkStringGetLen(String: LLVMRemarkStringRef) -> u32;
}
pub enum LLVMRemarkOpaqueDebugLoc {}
pub type LLVMRemarkDebugLocRef = *mut LLVMRemarkOpaqueDebugLoc;
extern "C" {
pub fn LLVMRemarkDebugLocGetSourceFilePath(DL: LLVMRemarkDebugLocRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkDebugLocGetSourceLine(DL: LLVMRemarkDebugLocRef) -> u32;
pub fn LLVMRemarkDebugLocGetSourceColumn(DL: LLVMRemarkDebugLocRef) -> u32;
}
pub enum LLVMRemarkOpaqueArg {}
pub type LLVMRemarkArgRef = *mut LLVMRemarkOpaqueArg;
extern "C" {
pub fn LLVMRemarkArgGetKey(Arg: LLVMRemarkArgRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkArgGetValue(Arg: LLVMRemarkArgRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkArgGetDebugLoc(Arg: LLVMRemarkArgRef) -> LLVMRemarkDebugLocRef;
}
pub enum LLVMRemarkOpaqueEntry {}
pub type LLVMRemarkEntryRef = *mut LLVMRemarkOpaqueEntry;
extern "C" {
pub fn LLVMRemarkEntryDispose(Remark: LLVMRemarkEntryRef);
pub fn LLVMRemarkEntryGetType(Remark: LLVMRemarkEntryRef) -> LLVMRemarkType;
pub fn LLVMRemarkEntryGetPassName(Remark: LLVMRemarkEntryRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkEntryGetRemarkName(Remark: LLVMRemarkEntryRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkEntryGetFunctionName(Remark: LLVMRemarkEntryRef) -> LLVMRemarkStringRef;
pub fn LLVMRemarkEntryGetDebugLoc(Remark: LLVMRemarkEntryRef) -> LLVMRemarkDebugLocRef;
pub fn LLVMRemarkEntryGetHotness(Remark: LLVMRemarkEntryRef) -> u64;
pub fn LLVMRemarkEntryGetNumArgs(Remark: LLVMRemarkEntryRef) -> u32;
pub fn LLVMRemarkEntryGetFirstArg(Remark: LLVMRemarkEntryRef) -> LLVMRemarkArgRef;
pub fn LLVMRemarkEntryGetNextArg(
It: LLVMRemarkArgRef,
Remark: LLVMRemarkEntryRef,
) -> LLVMRemarkArgRef;
}
pub enum LLVMRemarkOpaqueParser {}
pub type LLVMRemarkParserRef = *mut LLVMRemarkOpaqueParser;
extern "C" {
pub fn LLVMRemarkParserCreateYAML(Buf: *const ::libc::c_void, Size: u64)
-> LLVMRemarkParserRef;
pub fn LLVMRemarkParserCreateBitstream(
Buf: *const ::libc::c_void,
Size: u64,
) -> LLVMRemarkParserRef;
pub fn LLVMRemarkParserGetNext(Parser: LLVMRemarkParserRef) -> LLVMRemarkEntryRef;
pub fn LLVMRemarkParserHasError(Parser: LLVMRemarkParserRef) -> LLVMBool;
pub fn LLVMRemarkParserGetErrorMessage(Parser: LLVMRemarkParserRef) -> *const ::libc::c_char;
pub fn LLVMRemarkParserDispose(Parser: LLVMRemarkParserRef);
}
pub const REMARKS_API_VERSION: u32 = 1;
extern "C" {
pub fn LLVMRemarkVersion() -> u32;
}