Skip to main content

llvm_sys_featured/transforms/
pass_manager_builder.rs

1use super::super::prelude::*;
2
3#[derive(Debug)]
4pub enum LLVMOpaquePassManagerBuilder {}
5
6pub type LLVMPassManagerBuilderRef = *mut LLVMOpaquePassManagerBuilder;
7
8extern "C" {
9    pub fn LLVMPassManagerBuilderCreate() -> LLVMPassManagerBuilderRef;
10    pub fn LLVMPassManagerBuilderDispose(PMB: LLVMPassManagerBuilderRef);
11    pub fn LLVMPassManagerBuilderSetOptLevel(
12        PMB: LLVMPassManagerBuilderRef,
13        OptLevel: ::libc::c_uint,
14    );
15    pub fn LLVMPassManagerBuilderSetSizeLevel(
16        PMB: LLVMPassManagerBuilderRef,
17        SizeLevel: ::libc::c_uint,
18    );
19    pub fn LLVMPassManagerBuilderSetDisableUnitAtATime(
20        PMB: LLVMPassManagerBuilderRef,
21        Value: LLVMBool,
22    );
23    pub fn LLVMPassManagerBuilderSetDisableUnrollLoops(
24        PMB: LLVMPassManagerBuilderRef,
25        Value: LLVMBool,
26    );
27    pub fn LLVMPassManagerBuilderSetDisableSimplifyLibCalls(
28        PMB: LLVMPassManagerBuilderRef,
29        Value: LLVMBool,
30    );
31    pub fn LLVMPassManagerBuilderUseInlinerWithThreshold(
32        PMB: LLVMPassManagerBuilderRef,
33        Threshold: ::libc::c_uint,
34    );
35    pub fn LLVMPassManagerBuilderPopulateFunctionPassManager(
36        PMB: LLVMPassManagerBuilderRef,
37        PM: LLVMPassManagerRef,
38    );
39    pub fn LLVMPassManagerBuilderPopulateModulePassManager(
40        PMB: LLVMPassManagerBuilderRef,
41        PM: LLVMPassManagerRef,
42    );
43    pub fn LLVMPassManagerBuilderPopulateLTOPassManager(
44        PMB: LLVMPassManagerBuilderRef,
45        PM: LLVMPassManagerRef,
46        Internalize: LLVMBool,
47        RunInliner: LLVMBool,
48    );
49}