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
use super::prelude::*;
pub enum LLVMOpaqueObjectFile {}
pub type LLVMObjectFileRef = *mut LLVMOpaqueObjectFile;
pub enum LLVMOpaqueSectionIterator {}
pub type LLVMSectionIteratorRef = *mut LLVMOpaqueSectionIterator;
pub enum LLVMOpaqueSymbolIterator {}
pub type LLVMSymbolIteratorRef = *mut LLVMOpaqueSymbolIterator;
pub enum LLVMOpaqueRelocationIterator {}
pub type LLVMRelocationIteratorRef = *mut LLVMOpaqueRelocationIterator;
extern "C" {
pub fn LLVMCreateObjectFile(MemBuf: LLVMMemoryBufferRef)
-> LLVMObjectFileRef;
pub fn LLVMDisposeObjectFile(ObjectFile: LLVMObjectFileRef) -> ();
pub fn LLVMGetSections(ObjectFile: LLVMObjectFileRef)
-> LLVMSectionIteratorRef;
pub fn LLVMDisposeSectionIterator(SI: LLVMSectionIteratorRef) -> ();
pub fn LLVMIsSectionIteratorAtEnd(ObjectFile: LLVMObjectFileRef,
SI: LLVMSectionIteratorRef) -> LLVMBool;
pub fn LLVMMoveToNextSection(SI: LLVMSectionIteratorRef) -> ();
pub fn LLVMMoveToContainingSection(Sect: LLVMSectionIteratorRef,
Sym: LLVMSymbolIteratorRef) -> ();
pub fn LLVMGetSymbols(ObjectFile: LLVMObjectFileRef)
-> LLVMSymbolIteratorRef;
pub fn LLVMDisposeSymbolIterator(SI: LLVMSymbolIteratorRef) -> ();
pub fn LLVMIsSymbolIteratorAtEnd(ObjectFile: LLVMObjectFileRef,
SI: LLVMSymbolIteratorRef) -> LLVMBool;
pub fn LLVMMoveToNextSymbol(SI: LLVMSymbolIteratorRef) -> ();
pub fn LLVMGetSectionName(SI: LLVMSectionIteratorRef)
-> *const ::libc::c_char;
pub fn LLVMGetSectionSize(SI: LLVMSectionIteratorRef) -> u64;
pub fn LLVMGetSectionContents(SI: LLVMSectionIteratorRef)
-> *const ::libc::c_char;
pub fn LLVMGetSectionAddress(SI: LLVMSectionIteratorRef) -> u64;
pub fn LLVMGetSectionContainsSymbol(SI: LLVMSectionIteratorRef,
Sym: LLVMSymbolIteratorRef)
-> LLVMBool;
pub fn LLVMGetRelocations(Section: LLVMSectionIteratorRef)
-> LLVMRelocationIteratorRef;
pub fn LLVMDisposeRelocationIterator(RI: LLVMRelocationIteratorRef) -> ();
pub fn LLVMIsRelocationIteratorAtEnd(Section: LLVMSectionIteratorRef,
RI: LLVMRelocationIteratorRef)
-> LLVMBool;
pub fn LLVMMoveToNextRelocation(RI: LLVMRelocationIteratorRef) -> ();
pub fn LLVMGetSymbolName(SI: LLVMSymbolIteratorRef)
-> *const ::libc::c_char;
pub fn LLVMGetSymbolAddress(SI: LLVMSymbolIteratorRef) -> u64;
pub fn LLVMGetSymbolSize(SI: LLVMSymbolIteratorRef) -> u64;
pub fn LLVMGetRelocationAddress(RI: LLVMRelocationIteratorRef)
-> u64;
pub fn LLVMGetRelocationOffset(RI: LLVMRelocationIteratorRef) -> u64;
pub fn LLVMGetRelocationSymbol(RI: LLVMRelocationIteratorRef)
-> LLVMSymbolIteratorRef;
pub fn LLVMGetRelocationType(RI: LLVMRelocationIteratorRef) -> u64;
pub fn LLVMGetRelocationTypeName(RI: LLVMRelocationIteratorRef)
-> *const ::libc::c_char;
pub fn LLVMGetRelocationValueString(RI: LLVMRelocationIteratorRef)
-> *const ::libc::c_char;
}