[OCaml] Add OCaml API for LLVMIsCleanup
Summary: Expose test for whether or not a landingpad is a cleanup. Reviewers: whitequark Reviewed By: whitequark Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D52205 llvm-svn: 342438
This commit is contained in:
parent
02da196c8c
commit
1db8dc65ea
|
|
@ -1187,6 +1187,7 @@ external build_invoke : llvalue -> llvalue array -> llbasicblock ->
|
||||||
= "llvm_build_invoke_bc" "llvm_build_invoke_nat"
|
= "llvm_build_invoke_bc" "llvm_build_invoke_nat"
|
||||||
external build_landingpad : lltype -> llvalue -> int -> string -> llbuilder ->
|
external build_landingpad : lltype -> llvalue -> int -> string -> llbuilder ->
|
||||||
llvalue = "llvm_build_landingpad"
|
llvalue = "llvm_build_landingpad"
|
||||||
|
external is_cleanup : llvalue -> bool = "llvm_is_cleanup"
|
||||||
external set_cleanup : llvalue -> bool -> unit = "llvm_set_cleanup"
|
external set_cleanup : llvalue -> bool -> unit = "llvm_set_cleanup"
|
||||||
external add_clause : llvalue -> llvalue -> unit = "llvm_add_clause"
|
external add_clause : llvalue -> llvalue -> unit = "llvm_add_clause"
|
||||||
external build_resume : llvalue -> llbuilder -> llvalue = "llvm_build_resume"
|
external build_resume : llvalue -> llbuilder -> llvalue = "llvm_build_resume"
|
||||||
|
|
|
||||||
|
|
@ -2093,6 +2093,10 @@ val build_invoke : llvalue -> llvalue array -> llbasicblock ->
|
||||||
val build_landingpad : lltype -> llvalue -> int -> string -> llbuilder ->
|
val build_landingpad : lltype -> llvalue -> int -> string -> llbuilder ->
|
||||||
llvalue
|
llvalue
|
||||||
|
|
||||||
|
(** [is_cleanup lp] returns [true] if [landingpad] instruction lp is a cleanup.
|
||||||
|
See the method [llvm::LandingPadInst::isCleanup]. *)
|
||||||
|
val is_cleanup : llvalue -> bool
|
||||||
|
|
||||||
(** [set_cleanup lp] sets the cleanup flag in the [landingpad]instruction.
|
(** [set_cleanup lp] sets the cleanup flag in the [landingpad]instruction.
|
||||||
See the method [llvm::LandingPadInst::setCleanup]. *)
|
See the method [llvm::LandingPadInst::setCleanup]. *)
|
||||||
val set_cleanup : llvalue -> bool -> unit
|
val set_cleanup : llvalue -> bool -> unit
|
||||||
|
|
|
||||||
|
|
@ -1914,6 +1914,11 @@ CAMLprim value llvm_add_clause(LLVMValueRef LandingPadInst, LLVMValueRef ClauseV
|
||||||
return Val_unit;
|
return Val_unit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* llvalue -> bool */
|
||||||
|
CAMLprim value llvm_is_cleanup(LLVMValueRef LandingPadInst)
|
||||||
|
{
|
||||||
|
return Val_bool(LLVMIsCleanup(LandingPadInst));
|
||||||
|
}
|
||||||
|
|
||||||
/* llvalue -> bool -> unit */
|
/* llvalue -> bool -> unit */
|
||||||
CAMLprim value llvm_set_cleanup(LLVMValueRef LandingPadInst, value flag)
|
CAMLprim value llvm_set_cleanup(LLVMValueRef LandingPadInst, value flag)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue