Bindings for instruction calling conventions.
[oota-llvm.git] / bindings / ocaml / llvm / llvm.mli
index 8f2c9219e369470062de1c13bfef3a27134ed430..6d980a14709e80d0066aad81df2bfd12e2192b3a 100644 (file)
@@ -854,6 +854,20 @@ external value_is_block : llvalue -> bool = "llvm_value_is_block"
 (** [block_of_value v] losslessly casts [v] to an [llbasicblock]. **)
 external block_of_value : llvalue -> llbasicblock = "LLVMValueAsBasicBlock"
 
+(*--... Operations on call sites ...........................................--*)
+
+(** [inst_call_conv ci] is the calling convention for the call or invoke
+    instruction [ci], which may be one of the values from the module [CallConv].
+    See the method [CallSite:: **)
+external instruction_call_conv: llvalue -> int
+                              = "llvm_instruction_call_conv"
+
+(** [set_inst_call_conv cc ci] sets the calling convention for the call or
+    invoke instruction [ci] to the integer [cc], which can be one of the values
+    from the module [CallConv]. See the method [CallSite::]. **)
+external set_instruction_call_conv: int -> llvalue -> unit
+                                  = "llvm_set_instruction_call_conv"
+
 (*--... Operations on phi nodes ............................................--*)
 
 (** [add_incoming (v, bb) pn] adds the value [v] to the phi node [pn] for use