mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 12:41:49 +01:00
[OCaml] Expose Llvm.{set_,}unnamed_addr.
Patch by Jacques-Pascal Deplaix <jp.deplaix@gmail.com> llvm-svn: 250912
This commit is contained in:
parent
dcce633156
commit
8f3e9d7f99
@ -579,6 +579,8 @@ external global_parent : llvalue -> llmodule = "LLVMGetGlobalParent"
|
||||
external is_declaration : llvalue -> bool = "llvm_is_declaration"
|
||||
external linkage : llvalue -> Linkage.t = "llvm_linkage"
|
||||
external set_linkage : Linkage.t -> llvalue -> unit = "llvm_set_linkage"
|
||||
external unnamed_addr : llvalue -> bool = "llvm_unnamed_addr"
|
||||
external set_unnamed_addr : bool -> llvalue -> unit = "llvm_set_unnamed_addr"
|
||||
external section : llvalue -> string = "llvm_section"
|
||||
external set_section : string -> llvalue -> unit = "llvm_set_section"
|
||||
external visibility : llvalue -> Visibility.t = "llvm_visibility"
|
||||
|
@ -1255,6 +1255,16 @@ val linkage : llvalue -> Linkage.t
|
||||
See the method [llvm::GlobalValue::setLinkage]. *)
|
||||
val set_linkage : Linkage.t -> llvalue -> unit
|
||||
|
||||
(** [unnamed_addr g] returns [true] if the global value [g] has the unnamed_addr
|
||||
attribute. Returns [false] otherwise.
|
||||
See the method [llvm::GlobalValue::getUnnamedAddr]. *)
|
||||
val unnamed_addr : llvalue -> bool
|
||||
|
||||
(** [set_unnamed_addr b g] if [b] is [true], sets the unnamed_addr attribute of
|
||||
the global value [g]. Unset it otherwise.
|
||||
See the method [llvm::GlobalValue::setUnnamedAddr]. *)
|
||||
val set_unnamed_addr : bool -> llvalue -> unit
|
||||
|
||||
(** [section g] returns the linker section of the global value [g].
|
||||
See the method [llvm::GlobalValue::getSection]. *)
|
||||
val section : llvalue -> string
|
||||
|
@ -940,6 +940,17 @@ CAMLprim value llvm_set_linkage(value Linkage, LLVMValueRef Global) {
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* llvalue -> bool */
|
||||
CAMLprim value llvm_unnamed_addr(LLVMValueRef Global) {
|
||||
return Val_bool(LLVMHasUnnamedAddr(Global));
|
||||
}
|
||||
|
||||
/* bool -> llvalue -> unit */
|
||||
CAMLprim value llvm_set_unnamed_addr(value UseUnnamedAddr, LLVMValueRef Global) {
|
||||
LLVMSetUnnamedAddr(Global, Bool_val(UseUnnamedAddr));
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* llvalue -> string */
|
||||
CAMLprim value llvm_section(LLVMValueRef Global) {
|
||||
return caml_copy_string(LLVMGetSection(Global));
|
||||
|
Loading…
x
Reference in New Issue
Block a user