llvm_sys/transforms/
pass_builder.rs
1#![allow(non_snake_case)]
2
3use super::super::prelude::*;
4use error::LLVMErrorRef;
5use target_machine::LLVMTargetMachineRef;
6
7#[derive(Debug)]
8pub enum LLVMOpaquePassBuilderOptions {}
9pub type LLVMPassBuilderOptionsRef = *mut LLVMOpaquePassBuilderOptions;
10
11extern "C" {
12 pub fn LLVMRunPasses(
13 M: LLVMModuleRef,
14 Passes: *const ::libc::c_char,
15 TM: LLVMTargetMachineRef,
16 Options: LLVMPassBuilderOptionsRef,
17 ) -> LLVMErrorRef;
18 pub fn LLVMCreatePassBuilderOptions() -> LLVMPassBuilderOptionsRef;
19 pub fn LLVMPassBuilderOptionsSetVerifyEach(
20 Options: LLVMPassBuilderOptionsRef,
21 VerifyEach: LLVMBool,
22 );
23 pub fn LLVMPassBuilderOptionsSetDebugLogging(
24 Options: LLVMPassBuilderOptionsRef,
25 DebugLogging: LLVMBool,
26 );
27 pub fn LLVMPassBuilderOptionsSetLoopInterleaving(
28 Options: LLVMPassBuilderOptionsRef,
29 LoopInterleaving: LLVMBool,
30 );
31 pub fn LLVMPassBuilderOptionsSetLoopVectorization(
32 Options: LLVMPassBuilderOptionsRef,
33 LoopVectorization: LLVMBool,
34 );
35 pub fn LLVMPassBuilderOptionsSetSLPVectorization(
36 Options: LLVMPassBuilderOptionsRef,
37 SLPVectorization: LLVMBool,
38 );
39 pub fn LLVMPassBuilderOptionsSetLoopUnrolling(
40 Options: LLVMPassBuilderOptionsRef,
41 LoopUnrolling: LLVMBool,
42 );
43 pub fn LLVMPassBuilderOptionsSetForgetAllSCEVInLoopUnroll(
44 Options: LLVMPassBuilderOptionsRef,
45 ForgetAllSCEVInLoopUnroll: LLVMBool,
46 );
47 pub fn LLVMPassBuilderOptionsSetLicmMssaOptCap(
48 Options: LLVMPassBuilderOptionsRef,
49 LicmMssaOptCap: ::libc::c_uint,
50 );
51 pub fn LLVMPassBuilderOptionsSetLicmMssaNoAccForPromotionCap(
52 Options: LLVMPassBuilderOptionsRef,
53 LicmMssaNoAccForPromotionCap: ::libc::c_uint,
54 );
55 pub fn LLVMPassBuilderOptionsSetCallGraphProfile(
56 Options: LLVMPassBuilderOptionsRef,
57 CallGraphProfile: LLVMBool,
58 );
59 pub fn LLVMPassBuilderOptionsSetMergeFunctions(
60 Options: LLVMPassBuilderOptionsRef,
61 MergeFunctions: LLVMBool,
62 );
63 pub fn LLVMPassBuilderOptionsSetInlinerThreshold(
64 Options: LLVMPassBuilderOptionsRef,
65 Threshold: ::libc::c_int,
66 );
67 pub fn LLVMDisposePassBuilderOptions(Options: LLVMPassBuilderOptionsRef);
68}