llvm.mli revision 4647569fe7706e76135a08ca0e5f90a447ccc5b4
18ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*===-- tools/ml/llvm.ml - LLVM Ocaml Interface ---------------------------===* 28ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 38ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * The LLVM Compiler Infrastructure 48ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 58ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * This file was developed by Gordon Henriksen and is distributed under the 68ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * University of Illinois Open Source License. See LICENSE.TXT for details. 78ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 88ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen *===----------------------------------------------------------------------=== 98ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 108ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * This interface provides an ocaml API for the LLVM intermediate 118ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * representation, the classes in the VMCore library. 128ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen * 138ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen *===----------------------------------------------------------------------===*) 148ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 158ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 168ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* These abstract types correlate directly to the LLVM VMCore classes. *) 178ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype llmodule 188ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype lltype 198ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype llvalue 2046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksentype llbasicblock (* These are actually values, but 2146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen benefit from type checking. *) 2246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksentype llbuilder 238ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 248ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype type_kind = 258ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen Void_type 268ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Float_type 278ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Double_type 288ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| X86fp80_type 298ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Fp128_type 308ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Ppc_fp128_type 318ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Label_type 328ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Integer_type 338ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Function_type 348ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Struct_type 358ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Array_type 368ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Pointer_type 378ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Opaque_type 388ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Vector_type 398ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 408ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype linkage = 418ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen External_linkage 428ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Link_once_linkage 438ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Weak_linkage 448ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Appending_linkage 458ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Internal_linkage 468ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Dllimport_linkage 478ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Dllexport_linkage 488ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| External_weak_linkage 498ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Ghost_linkage 508ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 518ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksentype visibility = 528ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen Default_visibility 538ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Hidden_visibility 548ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen| Protected_visibility 558ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 5646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenval ccc : int 5746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenval fastcc : int 5846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenval coldcc : int 5946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenval x86_stdcallcc : int 6046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenval x86_fastcallcc : int 6146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 6246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksentype int_predicate = 6346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen Icmp_eq 6446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_ne 6546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_ugt 6646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_uge 6746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_ult 6846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_ule 6946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_sgt 7046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_sge 7146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_slt 7246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Icmp_sle 7346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 7446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksentype real_predicate = 7546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen Fcmp_false 7646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_oeq 7746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ogt 7846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_oge 7946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_olt 8046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ole 8146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_one 8246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ord 8346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_uno 8446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ueq 8546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ugt 8646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_uge 8746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ult 8846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_ule 8946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_une 9046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen| Fcmp_true 9146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 928ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 938ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*===-- Modules -----------------------------------------------------------===*) 948ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 958ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* Creates a module with the supplied module ID. Modules are not garbage 968ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen collected; it is mandatory to call dispose_module to free memory. *) 978ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal create_module : string -> llmodule = "llvm_create_module" 988ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 998ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* Disposes a module. All references to subordinate objects are invalidated; 1008ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen referencing them will invoke undefined behavior. *) 1018ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal dispose_module : llmodule -> unit = "llvm_dispose_module" 1028ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1038ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* Adds a named type to the module's symbol table. Returns true if successful. 1048ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen If such a name already exists, then no entry is added and returns false. *) 10546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal define_type_name : string -> lltype -> llmodule -> bool 10646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_add_type_name" 10746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 10846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal delete_type_name : string -> llmodule -> unit 10946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_delete_type_name" 1108ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1118ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1128ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*===-- Types -------------------------------------------------------------===*) 1138ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal classify_type : lltype -> type_kind = "llvm_classify_type" 1148ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal refine_abstract_type : lltype -> lltype -> unit 1158ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_refine_abstract_type" 1168ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval string_of_lltype : lltype -> string 1178ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1188ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on integer types ........................................--*) 1198ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval i1_type : lltype 1208ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval i8_type : lltype 1218ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval i16_type : lltype 1228ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval i32_type : lltype 1238ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval i64_type : lltype 1248ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_integer_type : int -> lltype = "llvm_make_integer_type" 1258ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal integer_bitwidth : lltype -> int = "llvm_integer_bitwidth" 1268ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1278ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on real types ...........................................--*) 1288ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval float_type : lltype 1298ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval double_type : lltype 1308ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval x86fp80_type : lltype 1318ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval fp128_type : lltype 1328ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval ppc_fp128_type : lltype 1338ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1348ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on function types .......................................--*) 1358ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(* FIXME: handle parameter attributes *) 1368ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_function_type : lltype -> lltype array -> bool -> lltype 1378ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_function_type" 1388ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal is_var_arg : lltype -> bool = "llvm_is_var_arg" 1398ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal return_type : lltype -> lltype = "llvm_return_type" 1408ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal param_types : lltype -> lltype array = "llvm_param_types" 1418ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1428ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on struct types .........................................--*) 1438ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_struct_type : lltype array -> bool -> lltype 1448ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_struct_type" 1458ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal element_types : lltype -> lltype array = "llvm_element_types" 1468ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal is_packed : lltype -> bool = "llvm_is_packed" 1478ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1488ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on pointer, vector, and array types .....................--*) 1498ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_array_type : lltype -> int -> lltype = "llvm_make_array_type" 1508ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_pointer_type : lltype -> lltype = "llvm_make_pointer_type" 1518ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_vector_type : lltype -> int -> lltype = "llvm_make_vector_type" 1528ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1538ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal element_type : lltype -> lltype = "llvm_element_type" 1548ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal array_length : lltype -> int = "llvm_array_length" 1558ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal vector_size : lltype -> int = "llvm_vector_size" 1568ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1578ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on other types ..........................................--*) 1588ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_opaque_type : unit -> lltype = "llvm_make_opaque_type" 1598ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval void_type : lltype 1608ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenval label_type : lltype 1618ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1628ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1638ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*===-- Values ------------------------------------------------------------===*) 1648ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal type_of : llvalue -> lltype = "llvm_type_of" 1658ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal value_name : llvalue -> string = "llvm_value_name" 1668ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_value_name : string -> llvalue -> unit = "llvm_set_value_name" 16788cc699942f7f972ef9bc3afa1df0a44d059e1d8Gordon Henriksenexternal dump_value : llvalue -> unit = "llvm_dump_value" 1688ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1698ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on constants of (mostly) any type .......................--*) 170344be5fbecec9908bab611eafeae0549ba3be6d7Gordon Henriksenexternal is_constant : llvalue -> bool = "llvm_is_constant" 17146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal make_null : lltype -> llvalue = "LLVMGetNull" 17246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal make_all_ones : (*int|vec*)lltype -> llvalue = "LLVMGetAllOnes" 17346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal make_undef : lltype -> llvalue = "LLVMGetUndef" 1748ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal is_null : llvalue -> bool = "llvm_is_null" 175344be5fbecec9908bab611eafeae0549ba3be6d7Gordon Henriksenexternal is_undef : llvalue -> bool = "llvm_is_undef" 1768ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1778ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on scalar constants .....................................--*) 1788ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_int_constant : lltype -> int -> bool -> llvalue 1798ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_int_constant" 180344be5fbecec9908bab611eafeae0549ba3be6d7Gordon Henriksenexternal make_int64_constant : lltype -> Int64.t -> bool -> llvalue 181344be5fbecec9908bab611eafeae0549ba3be6d7Gordon Henriksen = "llvm_make_int64_constant" 1828ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_real_constant : lltype -> float -> llvalue 1838ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_real_constant" 1848ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1858ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on composite constants ..................................--*) 1868ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_string_constant : string -> bool -> llvalue 1878ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_string_constant" 1888ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_array_constant : lltype -> llvalue array -> llvalue 1898ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_array_constant" 1908ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_struct_constant : llvalue array -> bool -> llvalue 1918ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_struct_constant" 1928ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal make_vector_constant : llvalue array -> llvalue 1938ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_make_vector_constant" 1948ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 1954647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen(*--... Constant expressions ...............................................--*) 1964647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal sizeof : lltype -> llvalue = "LLVMSizeOf" 1974647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_neg : llvalue -> llvalue = "LLVMConstNeg" 1984647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_not : llvalue -> llvalue = "LLVMConstNot" 1994647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_add : llvalue -> llvalue -> llvalue = "LLVMConstAdd" 2004647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_sub : llvalue -> llvalue -> llvalue = "LLVMConstSub" 2014647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_mul : llvalue -> llvalue -> llvalue = "LLVMConstMul" 2024647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_udiv : llvalue -> llvalue -> llvalue = "LLVMConstUDiv" 2034647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_sdiv : llvalue -> llvalue -> llvalue = "LLVMConstSDiv" 2044647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fdiv : llvalue -> llvalue -> llvalue = "LLVMConstFDiv" 2054647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_urem : llvalue -> llvalue -> llvalue = "LLVMConstURem" 2064647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_srem : llvalue -> llvalue -> llvalue = "LLVMConstSRem" 2074647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_frem : llvalue -> llvalue -> llvalue = "LLVMConstFRem" 2084647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_and : llvalue -> llvalue -> llvalue = "LLVMConstAnd" 2094647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_or : llvalue -> llvalue -> llvalue = "LLVMConstOr" 2104647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_xor : llvalue -> llvalue -> llvalue = "LLVMConstXor" 2114647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_icmp : int_predicate -> llvalue -> llvalue -> llvalue 2124647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "llvm_const_icmp" 2134647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fcmp : real_predicate -> llvalue -> llvalue -> llvalue 2144647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "llvm_const_fcmp" 2154647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_shl : llvalue -> llvalue -> llvalue = "LLVMConstShl" 2164647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_lshr : llvalue -> llvalue -> llvalue = "LLVMConstLShr" 2174647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_ashr : llvalue -> llvalue -> llvalue = "LLVMConstAShr" 2184647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_gep : llvalue -> llvalue array -> llvalue = "llvm_const_gep" 2194647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_trunc : llvalue -> lltype -> llvalue = "LLVMConstTrunc" 2204647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_sext : llvalue -> lltype -> llvalue = "LLVMConstSExt" 2214647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_zext : llvalue -> lltype -> llvalue = "LLVMConstZExt" 2224647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fptrunc : llvalue -> lltype -> llvalue = "LLVMConstFPTrunc" 2234647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fpext : llvalue -> lltype -> llvalue = "LLVMConstFPExt" 2244647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_uitofp : llvalue -> lltype -> llvalue = "LLVMConstUIToFP" 2254647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_sitofp : llvalue -> lltype -> llvalue = "LLVMConstSIToFP" 2264647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fptoui : llvalue -> lltype -> llvalue = "LLVMConstFPToUI" 2274647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_fptosi : llvalue -> lltype -> llvalue = "LLVMConstFPToSI" 2284647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_ptrtoint : llvalue -> lltype -> llvalue = "LLVMConstPtrToInt" 2294647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_inttoptr : llvalue -> lltype -> llvalue = "LLVMConstIntToPtr" 2304647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_bitcast : llvalue -> lltype -> llvalue = "LLVMConstBitCast" 2314647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_select : llvalue -> llvalue -> llvalue -> llvalue 2324647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "LLVMConstSelect" 2334647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_extractelement : llvalue -> llvalue -> llvalue 2344647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "LLVMConstExtractElement" 2354647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_insertelement : llvalue -> llvalue -> llvalue -> llvalue 2364647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "LLVMConstInsertElement" 2374647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksenexternal const_shufflevector : llvalue -> llvalue -> llvalue -> llvalue 2384647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen = "LLVMConstShuffleVector" 2394647569fe7706e76135a08ca0e5f90a447ccc5b4Gordon Henriksen 2408ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on global variables, functions, and aliases (globals) ...--*) 2418ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal is_declaration : llvalue -> bool = "llvm_is_declaration" 2428ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal linkage : llvalue -> linkage = "llvm_linkage" 2438ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_linkage : linkage -> llvalue -> unit = "llvm_set_linkage" 2448ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal section : llvalue -> string = "llvm_section" 2458ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_section : string -> llvalue -> unit = "llvm_set_section" 2468ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal visibility : llvalue -> visibility = "llvm_visibility" 2478ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_visibility : visibility -> llvalue -> unit = "llvm_set_visibility" 2488ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal alignment : llvalue -> int = "llvm_alignment" 2498ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_alignment : int -> llvalue -> unit = "llvm_set_alignment" 2508ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 2518ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen(*--... Operations on global variables .....................................--*) 2528ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal declare_global : lltype -> string -> llmodule -> llvalue 2538ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_declare_global" 2548ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal define_global : string -> llvalue -> llmodule -> llvalue 2558ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen = "llvm_define_global" 2568ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal delete_global : llvalue -> unit = "llvm_delete_global" 25746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal global_initializer : llvalue -> llvalue = "LLVMGetInitializer" 2588ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_initializer : llvalue -> llvalue -> unit = "llvm_set_initializer" 2598ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal remove_initializer : llvalue -> unit = "llvm_remove_initializer" 2608ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal is_thread_local : llvalue -> bool = "llvm_is_thread_local" 2618ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksenexternal set_thread_local : bool -> llvalue -> unit = "llvm_set_thread_local" 2628ef426baa36639458f6777309db25c1768dc9c8aGordon Henriksen 26346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Operations on functions ............................................--*) 26446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal declare_function : string -> lltype -> llmodule -> llvalue 26546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_declare_function" 26646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal define_function : string -> lltype -> llmodule -> llvalue 26746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_define_function" 26846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal delete_function : llvalue -> unit = "llvm_delete_function" 26946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal params : llvalue -> llvalue array = "llvm_params" 27046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal param : llvalue -> int -> llvalue = "llvm_param" 27146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal is_intrinsic : llvalue -> bool = "llvm_is_intrinsic" 27246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal function_call_conv : llvalue -> int = "llvm_function_call_conv" 27346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal set_function_call_conv : int -> llvalue -> unit 27446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_set_function_call_conv" 27546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 27646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Operations on basic blocks .........................................--*) 27746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal basic_blocks : llvalue -> llbasicblock array = "llvm_basic_blocks" 27846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal entry_block : llvalue -> llbasicblock = "LLVMGetEntryBasicBlock" 27946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal delete_block : llbasicblock -> unit = "llvm_delete_block" 28046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal append_block : string -> llvalue -> llbasicblock = "llvm_append_block" 28146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal insert_block : string -> llbasicblock -> llbasicblock 28246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_insert_block" 28346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal value_of_block : llbasicblock -> llvalue = "LLVMBasicBlockAsValue" 28446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal value_is_block : llvalue -> bool = "llvm_value_is_block" 28546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal block_of_value : llvalue -> llbasicblock = "LLVMValueAsBasicBlock" 28646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 28746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 28846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*===-- Instruction builders ----------------------------------------------===*) 28946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal builder_before : llvalue -> llbuilder = "llvm_builder_before" 29046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal builder_at_end : llbasicblock -> llbuilder = "llvm_builder_at_end" 29146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal position_before : llvalue -> llbuilder -> unit = "llvm_position_before" 29246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal position_at_end : llbasicblock -> llbuilder -> unit 29346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_position_at_end" 29446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 29546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Terminators ........................................................--*) 29646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_ret_void : llbuilder -> llvalue = "llvm_build_ret_void" 29746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_ret : llvalue -> llbuilder -> llvalue = "llvm_build_ret" 29846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_br : llbasicblock -> llbuilder -> llvalue = "llvm_build_br" 29946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_cond_br : llvalue -> llbasicblock -> llbasicblock -> llbuilder -> 30046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llvalue = "llvm_build_cond_br" 30146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_switch : llvalue -> llbasicblock -> int -> llbuilder -> llvalue 30246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_switch" 30346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_invoke : llvalue -> llvalue array -> llbasicblock -> 30446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llbasicblock -> string -> llbuilder -> llvalue 30546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_invoke_bc" "llvm_build_invoke_nat" 30646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_unwind : llbuilder -> llvalue = "llvm_build_unwind" 30746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_unreachable : llbuilder -> llvalue = "llvm_build_unreachable" 30846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 30946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Arithmetic .........................................................--*) 31046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_add : llvalue -> llvalue -> string -> llbuilder -> llvalue 31146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_add" 31246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_sub : llvalue -> llvalue -> string -> llbuilder -> llvalue 31346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_sub" 31446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_mul : llvalue -> llvalue -> string -> llbuilder -> llvalue 31546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_mul" 31646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_udiv : llvalue -> llvalue -> string -> llbuilder -> llvalue 31746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_udiv" 31846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_sdiv : llvalue -> llvalue -> string -> llbuilder -> llvalue 31946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_sdiv" 32046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fdiv : llvalue -> llvalue -> string -> llbuilder -> llvalue 32146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_fdiv" 32246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_urem : llvalue -> llvalue -> string -> llbuilder -> llvalue 32346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_urem" 32446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_srem : llvalue -> llvalue -> string -> llbuilder -> llvalue 32546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_srem" 32646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_frem : llvalue -> llvalue -> string -> llbuilder -> llvalue 32746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_frem" 32846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_shl : llvalue -> llvalue -> string -> llbuilder -> llvalue 32946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_shl" 33046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_lshr : llvalue -> llvalue -> string -> llbuilder -> llvalue 33146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_lshr" 33246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_ashr : llvalue -> llvalue -> string -> llbuilder -> llvalue 33346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_ashr" 33446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_and : llvalue -> llvalue -> string -> llbuilder -> llvalue 33546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_and" 33646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_or : llvalue -> llvalue -> string -> llbuilder -> llvalue 33746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_or" 33846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_xor : llvalue -> llvalue -> string -> llbuilder -> llvalue 33946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_xor" 34046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_neg : llvalue -> string -> llbuilder -> llvalue 34146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_neg" 34246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_not : llvalue -> string -> llbuilder -> llvalue 34346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_not" 34446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 34546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Memory .............................................................--*) 34646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_malloc : lltype -> string -> llbuilder -> llvalue 34746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_malloc" 34846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_array_malloc : lltype -> llvalue -> string -> llbuilder -> 34946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llvalue = "llvm_build_array_malloc" 35046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_alloca : lltype -> string -> llbuilder -> llvalue 35146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_alloca" 35246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_array_alloca : lltype -> llvalue -> string -> llbuilder -> 35346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llvalue = "llvm_build_array_alloca" 35446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_free : llvalue -> llbuilder -> llvalue = "llvm_build_free" 35546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_load : llvalue -> string -> llbuilder -> llvalue 35646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_load" 35746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_store : llvalue -> llvalue -> llbuilder -> llvalue 35846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_store" 35946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_gep : llvalue -> llvalue array -> string -> llbuilder -> llvalue 36046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_gep" 36146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 36246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Casts ..............................................................--*) 36346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_trunc : llvalue -> lltype -> string -> llbuilder -> llvalue 36446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_trunc" 36546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_zext : llvalue -> lltype -> string -> llbuilder -> llvalue 36646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_zext" 36746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_sext : llvalue -> lltype -> string -> llbuilder -> llvalue 36846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_sext" 36946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fptoui : llvalue -> lltype -> string -> llbuilder -> llvalue 37046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_fptoui" 37146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fptosi : llvalue -> lltype -> string -> llbuilder -> llvalue 37246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_fptosi" 37346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_uitofp : llvalue -> lltype -> string -> llbuilder -> llvalue 37446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_uitofp" 37546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_sitofp : llvalue -> lltype -> string -> llbuilder -> llvalue 37646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_sitofp" 37746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fptrunc : llvalue -> lltype -> string -> llbuilder -> llvalue 37846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_fptrunc" 37946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fpext : llvalue -> lltype -> string -> llbuilder -> llvalue 38046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_fpext" 38146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_ptrtoint : llvalue -> lltype -> string -> llbuilder -> llvalue 38246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_prttoint" 38346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_inttoptr : llvalue -> lltype -> string -> llbuilder -> llvalue 38446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_inttoptr" 38546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_bitcast : llvalue -> lltype -> string -> llbuilder -> llvalue 38646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_bitcast" 38746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 38846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Comparisons ........................................................--*) 38946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_icmp : int_predicate -> llvalue -> llvalue -> string -> 39046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llbuilder -> llvalue = "llvm_build_icmp" 39146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_fcmp : real_predicate -> llvalue -> llvalue -> string -> 39246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llbuilder -> llvalue = "llvm_build_fcmp" 39346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen 39446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen(*--... Miscellaneous instructions .........................................--*) 39546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_phi : lltype -> string -> llbuilder -> llvalue = "llvm_build_phi" 39646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_call : llvalue -> llvalue array -> string -> llbuilder -> llvalue 39746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_call" 39846abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_select : llvalue -> llvalue -> llvalue -> string -> llbuilder -> 39946abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llvalue = "llvm_build_select" 40046abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_va_arg : llvalue -> lltype -> string -> llbuilder -> llvalue 40146abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen = "llvm_build_va_arg" 40246abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_extractelement : llvalue -> llvalue -> string -> llbuilder -> 40346abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llvalue = "llvm_build_extractelement" 40446abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_insertelement : llvalue -> llvalue -> llvalue -> string -> 40546abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llbuilder -> llvalue = "llvm_build_insertelement" 40646abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksenexternal build_shufflevector : llvalue -> llvalue -> llvalue -> string -> 40746abf91f7378fb7bb118d66fe6d69b5d3af1e9d5Gordon Henriksen llbuilder -> llvalue = "llvm_build_shufflevector" 408