llvm.mli revision 6d6203dff3560a2cc3ac8ec620ac3b105b0c7cc7
182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*===-- tools/ml/llvm.ml - LLVM Ocaml Interface ---------------------------===*
282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *
382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *                     The LLVM Compiler Infrastructure
482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *
582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner * This file was developed by Gordon Henriksen and is distributed under the
682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner * University of Illinois Open Source License. See LICENSE.TXT for details.
782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *
882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *===----------------------------------------------------------------------===
982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *
1082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner * This interface provides an ocaml API for the LLVM intermediate
1182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner * representation, the classes in the VMCore library.
1282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *
1382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner *===----------------------------------------------------------------------===*)
1482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
15af76e592c7f9deff0e55c13dbb4a34f07f1c7f64Chris Lattner
1682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(* These abstract types correlate directly to the LLVM VMCore classes. *)
1782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype llmodule
18af76e592c7f9deff0e55c13dbb4a34f07f1c7f64Chris Lattnertype lltype
1982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype lltypehandle
2082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype llvalue
2182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype llbasicblock (* These are actually values, but
2282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                     benefit from type checking. *)
2382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype llbuilder
2482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
2582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype type_kind =
2682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner  Void_type
2782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Float_type
2882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Double_type
2982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| X86fp80_type
3082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fp128_type
3182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Ppc_fp128_type
3282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Label_type
3382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Integer_type
3482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Function_type
3582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Struct_type
3682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Array_type
37aac138e84dee1cb3ffc1035b2a1e4361fe0b4f80Chris Lattner| Pointer_type 
38aac138e84dee1cb3ffc1035b2a1e4361fe0b4f80Chris Lattner| Opaque_type
3971eae713153e564ec743c5c4162ff258c255de78Chris Lattner| Vector_type
4071eae713153e564ec743c5c4162ff258c255de78Chris Lattner
4171eae713153e564ec743c5c4162ff258c255de78Chris Lattnertype linkage =
4271eae713153e564ec743c5c4162ff258c255de78Chris Lattner  External_linkage
4371eae713153e564ec743c5c4162ff258c255de78Chris Lattner| Link_once_linkage
4471eae713153e564ec743c5c4162ff258c255de78Chris Lattner| Weak_linkage
4571eae713153e564ec743c5c4162ff258c255de78Chris Lattner| Appending_linkage
46aac138e84dee1cb3ffc1035b2a1e4361fe0b4f80Chris Lattner| Internal_linkage
4782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Dllimport_linkage
4882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Dllexport_linkage
4982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| External_weak_linkage
5082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Ghost_linkage
5182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
5282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype visibility =
5382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner  Default_visibility
5482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Hidden_visibility
5582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Protected_visibility
56eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
5782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval ccc : int
5882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval fastcc : int
5982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval coldcc : int
60eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval x86_stdcallcc : int
6182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval x86_fastcallcc : int
6282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
6382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype int_predicate =
64eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling  Icmp_eq
6582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_ne
6682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_ugt
6782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_uge
6882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_ult
69eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Icmp_ule
7082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_sgt
7182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_sge
7282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Icmp_slt
73eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Icmp_sle
7482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
7582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnertype real_predicate =
7682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner  Fcmp_false
77eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Fcmp_oeq
7882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_ogt
7982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_oge
8082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_olt
81eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Fcmp_ole
8282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_one
8382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_ord
8482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_uno
8582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_ueq
86eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Fcmp_ugt
8782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_uge
8882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_ult
8982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_ule
9082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner| Fcmp_une
91eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling| Fcmp_true
9282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
9382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
9482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*===-- Modules -----------------------------------------------------------===*)
95eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
96eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling(* Creates a module with the supplied module ID. Modules are not garbage
9782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner   collected; it is mandatory to call dispose_module to free memory. *)
9882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal create_module : string -> llmodule = "llvm_create_module"
99eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
10082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(* Disposes a module. All references to subordinate objects are invalidated;
10182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner   referencing them will invoke undefined behavior. *)
10282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal dispose_module : llmodule -> unit = "llvm_dispose_module"
10382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
104c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov(* Adds a named type to the module's symbol table. Returns true if successful.
105c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov   If such a name already exists, then no entry is added and returns false. *)
106c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikovexternal define_type_name : string -> lltype -> llmodule -> bool
107c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov                          = "llvm_add_type_name"
10882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
10982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal delete_type_name : string -> llmodule -> unit
11082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                          = "llvm_delete_type_name"
11182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
11282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
11382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*===-- Types -------------------------------------------------------------===*)
11482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal classify_type : lltype -> type_kind = "llvm_classify_type"
115eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal refine_abstract_type : lltype -> lltype -> unit
11682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                              = "llvm_refine_abstract_type"
11782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval string_of_lltype : lltype -> string
11882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
119eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling(*--... Operations on integer types ........................................--*)
12082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval i1_type : lltype
12182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval i8_type : lltype
12282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval i16_type : lltype
12382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval i32_type : lltype
124eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval i64_type : lltype
12582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal integer_type : int -> lltype = "llvm_integer_type"
12682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal integer_bitwidth : lltype -> int = "llvm_integer_bitwidth"
12782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
12882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on real types ...........................................--*)
129eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval float_type : lltype
130eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval double_type : lltype
131eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval x86fp80_type : lltype
132eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval fp128_type : lltype
13382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval ppc_fp128_type : lltype
13482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
13582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on function types .......................................--*)
13682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(* FIXME: handle parameter attributes                                         *)
13782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal function_type : lltype -> lltype array -> lltype = "llvm_function_type"
1385ec2e6b586bf4029763711d6860b57d312eb2d2eChris Lattnerexternal var_arg_function_type : lltype -> lltype array -> lltype
13982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                               = "llvm_var_arg_function_type"
14082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_var_arg : lltype -> bool = "llvm_is_var_arg"
14182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal return_type : lltype -> lltype = "LLVMGetReturnType"
14282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal param_types : lltype -> lltype array = "llvm_param_types"
14382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
144eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling(*--... Operations on struct types .........................................--*)
14582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal struct_type : lltype array -> lltype = "llvm_struct_type"
14682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal packed_struct_type : lltype array -> lltype = "llvm_packed_struct_type"
14782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal element_types : lltype -> lltype array = "llvm_element_types"
14882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_packed : lltype -> bool = "llvm_is_packed"
149eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
15082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on pointer, vector, and array types .....................--*)
15182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal array_type : lltype -> int -> lltype = "llvm_array_type"
15282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal pointer_type : lltype -> lltype = "LLVMPointerType"
15382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal vector_type : lltype -> int -> lltype = "llvm_vector_type"
15482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
15582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal element_type : lltype -> lltype = "LLVMGetElementType"
156eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal array_length : lltype -> int = "llvm_array_length"
15782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal vector_size : lltype -> int = "llvm_vector_size"
15882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
15982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on other types ..........................................--*)
16082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal opaque_type : unit -> lltype = "llvm_opaque_type"
16182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerval void_type : lltype
162eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingval label_type : lltype
16382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
16482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on type handles .........................................--*)
16582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal handle_to_type : lltype -> lltypehandle = "llvm_handle_to_type"
166eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal type_of_handle : lltypehandle -> lltype = "llvm_type_of_handle"
16782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal refine_type : lltype -> lltype -> unit = "llvm_refine_type"
16882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
16982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
17082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*===-- Values ------------------------------------------------------------===*)
17182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal type_of : llvalue -> lltype = "llvm_type_of"
172eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal value_name : llvalue -> string = "llvm_value_name"
173eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal set_value_name : string -> llvalue -> unit = "llvm_set_value_name"
17482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal dump_value : llvalue -> unit = "llvm_dump_value"
17582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
17682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on constants of (mostly) any type .......................--*)
17782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_constant : llvalue -> bool = "llvm_is_constant"
17882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_null : lltype -> llvalue = "LLVMConstNull"
17982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_all_ones : (*int|vec*)lltype -> llvalue = "LLVMConstAllOnes"
180eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal undef : lltype -> llvalue = "LLVMGetUndef"
18182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_null : llvalue -> bool = "llvm_is_null"
18282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_undef : llvalue -> bool = "llvm_is_undef"
18382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
18482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on scalar constants .....................................--*)
185eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_int : lltype -> int -> llvalue = "llvm_const_int"
18682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_of_int64 : lltype -> Int64.t -> bool -> llvalue
18782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        = "llvm_const_of_int64"
18882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_float : lltype -> float -> llvalue = "llvm_const_float"
189eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
19082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on composite constants ..................................--*)
19182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_string : string -> llvalue = "llvm_const_string"
19282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_stringz : string -> llvalue = "llvm_const_stringz"
19382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_array : lltype -> llvalue array -> llvalue = "llvm_const_array"
194814819f6ea7fb0638fe73920299fda0da941a59eChris Lattnerexternal const_struct : llvalue array -> llvalue = "llvm_const_struct"
19582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_packed_struct : llvalue array -> llvalue
196eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling                             = "llvm_const_packed_struct"
19782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_vector : llvalue array -> llvalue = "llvm_const_vector"
198eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling
19982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Constant expressions ...............................................--*)
20082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal size_of : lltype -> llvalue = "LLVMSizeOf"
20182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_neg : llvalue -> llvalue = "LLVMConstNeg"
202eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_not : llvalue -> llvalue = "LLVMConstNot"
20382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_add : llvalue -> llvalue -> llvalue = "LLVMConstAdd"
20482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_sub : llvalue -> llvalue -> llvalue = "LLVMConstSub"
20582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_mul : llvalue -> llvalue -> llvalue = "LLVMConstMul"
206eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_udiv : llvalue -> llvalue -> llvalue = "LLVMConstUDiv"
20782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_sdiv : llvalue -> llvalue -> llvalue = "LLVMConstSDiv"
20882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_fdiv : llvalue -> llvalue -> llvalue = "LLVMConstFDiv"
20982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_urem : llvalue -> llvalue -> llvalue = "LLVMConstURem"
210eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_srem : llvalue -> llvalue -> llvalue = "LLVMConstSRem"
21182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_frem : llvalue -> llvalue -> llvalue = "LLVMConstFRem"
21282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_and : llvalue -> llvalue -> llvalue = "LLVMConstAnd"
21382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_or : llvalue -> llvalue -> llvalue = "LLVMConstOr"
21482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_xor : llvalue -> llvalue -> llvalue = "LLVMConstXor"
215eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_icmp : int_predicate -> llvalue -> llvalue -> llvalue
21682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_const_icmp"
21782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_fcmp : real_predicate -> llvalue -> llvalue -> llvalue
21882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_const_fcmp"
219eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_shl : llvalue -> llvalue -> llvalue = "LLVMConstShl"
22082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_lshr : llvalue -> llvalue -> llvalue = "LLVMConstLShr"
22182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_ashr : llvalue -> llvalue -> llvalue = "LLVMConstAShr"
22282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_gep : llvalue -> llvalue array -> llvalue = "llvm_const_gep"
223eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_trunc : llvalue -> lltype -> llvalue = "LLVMConstTrunc"
22441eb8b47717e1fe1a6d0e99ec1b4e890091f77aaChris Lattnerexternal const_sext : llvalue -> lltype -> llvalue = "LLVMConstSExt"
22541eb8b47717e1fe1a6d0e99ec1b4e890091f77aaChris Lattnerexternal const_zext : llvalue -> lltype -> llvalue = "LLVMConstZExt"
22641eb8b47717e1fe1a6d0e99ec1b4e890091f77aaChris Lattnerexternal const_fptrunc : llvalue -> lltype -> llvalue = "LLVMConstFPTrunc"
22741eb8b47717e1fe1a6d0e99ec1b4e890091f77aaChris Lattnerexternal const_fpext : llvalue -> lltype -> llvalue = "LLVMConstFPExt"
22882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_uitofp : llvalue -> lltype -> llvalue = "LLVMConstUIToFP"
22982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_sitofp : llvalue -> lltype -> llvalue = "LLVMConstSIToFP"
23082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_fptoui : llvalue -> lltype -> llvalue = "LLVMConstFPToUI"
231eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_fptosi : llvalue -> lltype -> llvalue = "LLVMConstFPToSI"
23282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_ptrtoint : llvalue -> lltype -> llvalue = "LLVMConstPtrToInt"
23382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_inttoptr : llvalue -> lltype -> llvalue = "LLVMConstIntToPtr"
23482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_bitcast : llvalue -> lltype -> llvalue = "LLVMConstBitCast"
235eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendlingexternal const_select : llvalue -> llvalue -> llvalue -> llvalue
23682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "LLVMConstSelect"
23782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_extractelement : llvalue -> llvalue -> llvalue
23882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                              = "LLVMConstExtractElement"
23982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal const_insertelement : llvalue -> llvalue -> llvalue -> llvalue
240b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling                             = "LLVMConstInsertElement"
241b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal const_shufflevector : llvalue -> llvalue -> llvalue -> llvalue
24282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                             = "LLVMConstShuffleVector"
24382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
24482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on global variables, functions, and aliases (globals) ...--*)
24582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_declaration : llvalue -> bool = "llvm_is_declaration"
24682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal linkage : llvalue -> linkage = "llvm_linkage"
24782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_linkage : linkage -> llvalue -> unit = "llvm_set_linkage"
248b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal section : llvalue -> string = "llvm_section"
24982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_section : string -> llvalue -> unit = "llvm_set_section"
25082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal visibility : llvalue -> visibility = "llvm_visibility"
25182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_visibility : visibility -> llvalue -> unit = "llvm_set_visibility"
252b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal alignment : llvalue -> int = "llvm_alignment"
25382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_alignment : int -> llvalue -> unit = "llvm_set_alignment"
25482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_global_constant : llvalue -> bool = "llvm_is_global_constant"
25582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_global_constant : bool -> llvalue -> unit
256b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling                             = "llvm_set_global_constant"
25782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
258b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling(*--... Operations on global variables .....................................--*)
259b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal declare_global : lltype -> string -> llmodule -> llvalue
26082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        = "llvm_declare_global"
26182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal define_global : string -> llvalue -> llmodule -> llvalue
262b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling                       = "llvm_define_global"
26382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal lookup_global : string -> llmodule -> llvalue option
26482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                       = "llvm_lookup_global"
26582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal delete_global : llvalue -> unit = "llvm_delete_global"
266b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal global_initializer : llvalue -> llvalue = "LLVMGetInitializer"
26782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_initializer : llvalue -> llvalue -> unit = "llvm_set_initializer"
26882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal remove_initializer : llvalue -> unit = "llvm_remove_initializer"
26982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_thread_local : llvalue -> bool = "llvm_is_thread_local"
270b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendlingexternal set_thread_local : bool -> llvalue -> unit = "llvm_set_thread_local"
271b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling
27282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on functions ............................................--*)
27382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal declare_function : string -> lltype -> llmodule -> llvalue
274b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling                          = "llvm_declare_function"
27582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal define_function : string -> lltype -> llmodule -> llvalue
27682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                         = "llvm_define_function"
27782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal lookup_function : string -> llmodule -> llvalue option
278b9e7689c89acf9324fba9242e00a9a4b8a3a83a6Bill Wendling                         = "llvm_lookup_function"
27982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal delete_function : llvalue -> unit = "llvm_delete_function"
28082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal params : llvalue -> llvalue array = "llvm_params"
28182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal param : llvalue -> int -> llvalue = "llvm_param"
28282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal is_intrinsic : llvalue -> bool = "llvm_is_intrinsic"
28382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal function_call_conv : llvalue -> int = "llvm_function_call_conv"
28482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal set_function_call_conv : int -> llvalue -> unit
285eb2fde2c939892f620de93f56dc21ec0c36824efBill Wendling                                = "llvm_set_function_call_conv"
28682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
28782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Operations on basic blocks .........................................--*)
2888eeba35babf3114966fc4e6e8522057e46b610dbChris Lattnerexternal basic_blocks : llvalue -> llbasicblock array = "llvm_basic_blocks"
28982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal entry_block : llvalue -> llbasicblock = "LLVMGetEntryBasicBlock"
29082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal delete_block : llbasicblock -> unit = "llvm_delete_block"
29182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal append_block : string -> llvalue -> llbasicblock = "llvm_append_block"
29282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal insert_block : string -> llbasicblock -> llbasicblock
29382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_insert_block"
29482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal value_of_block : llbasicblock -> llvalue = "LLVMBasicBlockAsValue"
29582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal value_is_block : llvalue -> bool = "llvm_value_is_block"
29682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal block_of_value : llvalue -> llbasicblock = "LLVMValueAsBasicBlock"
29782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
29882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
29982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*===-- Instruction builders ----------------------------------------------===*)
30082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal builder_before : llvalue -> llbuilder = "llvm_builder_before"
30182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal builder_at_end : llbasicblock -> llbuilder = "llvm_builder_at_end"
30282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal position_before : llvalue -> llbuilder -> unit = "llvm_position_before"
30382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal position_at_end : llbasicblock -> llbuilder -> unit
30482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                         = "llvm_position_at_end"
30582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
30682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Terminators ........................................................--*)
30782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_ret_void : llbuilder -> llvalue = "llvm_build_ret_void"
30882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_ret : llvalue -> llbuilder -> llvalue = "llvm_build_ret"
30982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_br : llbasicblock -> llbuilder -> llvalue = "llvm_build_br"
31082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_cond_br : llvalue -> llbasicblock -> llbasicblock -> llbuilder ->
31182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                         llvalue = "llvm_build_cond_br"
31282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_switch : llvalue -> llbasicblock -> int -> llbuilder -> llvalue
31382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_switch"
31482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_invoke : llvalue -> llvalue array -> llbasicblock ->
31582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        llbasicblock -> string -> llbuilder -> llvalue
31682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_invoke_bc" "llvm_build_invoke_nat"
31782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_unwind : llbuilder -> llvalue = "llvm_build_unwind"
31882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_unreachable : llbuilder -> llvalue = "llvm_build_unreachable"
31982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
32082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Arithmetic .........................................................--*)
32182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_add : llvalue -> llvalue -> string -> llbuilder -> llvalue
32282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_add"
32382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_sub : llvalue -> llvalue -> string -> llbuilder -> llvalue
32482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_sub"
325aac138e84dee1cb3ffc1035b2a1e4361fe0b4f80Chris Lattnerexternal build_mul : llvalue -> llvalue -> string -> llbuilder -> llvalue
32671eae713153e564ec743c5c4162ff258c255de78Chris Lattner                   = "llvm_build_mul"
32771eae713153e564ec743c5c4162ff258c255de78Chris Lattnerexternal build_udiv : llvalue -> llvalue -> string -> llbuilder -> llvalue
32871eae713153e564ec743c5c4162ff258c255de78Chris Lattner                    = "llvm_build_udiv"
32982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_sdiv : llvalue -> llvalue -> string -> llbuilder -> llvalue
33082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_sdiv"
33182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fdiv : llvalue -> llvalue -> string -> llbuilder -> llvalue
33282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_fdiv"
33382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_urem : llvalue -> llvalue -> string -> llbuilder -> llvalue
33482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_urem"
33582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_srem : llvalue -> llvalue -> string -> llbuilder -> llvalue
33682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_srem"
33782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_frem : llvalue -> llvalue -> string -> llbuilder -> llvalue
33882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_frem"
33982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_shl : llvalue -> llvalue -> string -> llbuilder -> llvalue
34082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_shl"
34182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_lshr : llvalue -> llvalue -> string -> llbuilder -> llvalue
34282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_lshr"
34382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_ashr : llvalue -> llvalue -> string -> llbuilder -> llvalue
34482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_ashr"
34582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_and : llvalue -> llvalue -> string -> llbuilder -> llvalue
34682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_and"
34782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_or : llvalue -> llvalue -> string -> llbuilder -> llvalue
34882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                  = "llvm_build_or"
34982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_xor : llvalue -> llvalue -> string -> llbuilder -> llvalue
35082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_xor"
35182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_neg : llvalue -> string -> llbuilder -> llvalue
35282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_neg"
35382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_not : llvalue -> string -> llbuilder -> llvalue
35482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                   = "llvm_build_not"
35582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
35682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Memory .............................................................--*)
35782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_malloc : lltype -> string -> llbuilder -> llvalue
35882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_malloc"
35982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_array_malloc : lltype -> llvalue -> string -> llbuilder ->
36082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                              llvalue = "llvm_build_array_malloc"
36182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_alloca : lltype -> string -> llbuilder -> llvalue
36282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_alloca"
36382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_array_alloca : lltype -> llvalue -> string -> llbuilder ->
36482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                              llvalue = "llvm_build_array_alloca"
36582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_free : llvalue -> llbuilder -> llvalue = "llvm_build_free"
36682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_load : llvalue -> string -> llbuilder -> llvalue
36782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_load"
36882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_store : llvalue -> llvalue -> llbuilder -> llvalue
36982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                     = "llvm_build_store"
37082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_gep : llvalue -> llvalue array -> string -> llbuilder -> llvalue
371c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov                   = "llvm_build_gep"
372c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov
373c6f729ed5519cdf398ca4039dbdbea4f81433ec0Anton Korobeynikov(*--... Casts ..............................................................--*)
37482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_trunc : llvalue -> lltype -> string -> llbuilder -> llvalue
37582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                     = "llvm_build_trunc"
37682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_zext : llvalue -> lltype -> string -> llbuilder -> llvalue
37782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_zext"
37882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_sext : llvalue -> lltype -> string -> llbuilder -> llvalue
37982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_sext"
38082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fptoui : llvalue -> lltype -> string -> llbuilder -> llvalue
38182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_fptoui"
38282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fptosi : llvalue -> lltype -> string -> llbuilder -> llvalue
38382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_fptosi"
38482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_uitofp : llvalue -> lltype -> string -> llbuilder -> llvalue
38582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_uitofp"
38682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_sitofp : llvalue -> lltype -> string -> llbuilder -> llvalue
38782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_sitofp"
38882d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fptrunc : llvalue -> lltype -> string -> llbuilder -> llvalue
38982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                       = "llvm_build_fptrunc"
39082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fpext : llvalue -> lltype -> string -> llbuilder -> llvalue
39182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                     = "llvm_build_fpext"
39282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_ptrtoint : llvalue -> lltype -> string -> llbuilder -> llvalue
39382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        = "llvm_build_prttoint"
39482d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_inttoptr : llvalue -> lltype -> string -> llbuilder -> llvalue
39582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        = "llvm_build_inttoptr"
39682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_bitcast : llvalue -> lltype -> string -> llbuilder -> llvalue
39782d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                       = "llvm_build_bitcast"
39882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
39982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Comparisons ........................................................--*)
40082d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_icmp : int_predicate -> llvalue -> llvalue -> string ->
40182d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      llbuilder -> llvalue = "llvm_build_icmp"
40282d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_fcmp : real_predicate -> llvalue -> llvalue -> string ->
40382d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      llbuilder -> llvalue = "llvm_build_fcmp"
40482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner
40582d748d55c549dd055528ed10dbb534618ca8115Chris Lattner(*--... Miscellaneous instructions .........................................--*)
40682d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_phi : lltype -> string -> llbuilder -> llvalue = "llvm_build_phi"
40782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_call : llvalue -> llvalue array -> string -> llbuilder -> llvalue
40882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                    = "llvm_build_call"
40982d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_select : llvalue -> llvalue -> llvalue -> string -> llbuilder ->
41082d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                        llvalue = "llvm_build_select"
41182d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_va_arg : llvalue -> lltype -> string -> llbuilder -> llvalue
41282d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                      = "llvm_build_va_arg"
41382d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_extractelement : llvalue -> llvalue -> string -> llbuilder ->
41482d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                                llvalue = "llvm_build_extractelement"
41582d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_insertelement : llvalue -> llvalue -> llvalue -> string ->
41682d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                               llbuilder -> llvalue = "llvm_build_insertelement"
41782d748d55c549dd055528ed10dbb534618ca8115Chris Lattnerexternal build_shufflevector : llvalue -> llvalue -> llvalue -> string ->
41882d748d55c549dd055528ed10dbb534618ca8115Chris Lattner                               llbuilder -> llvalue = "llvm_build_shufflevector"
41982d748d55c549dd055528ed10dbb534618ca8115Chris Lattner