mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[NFC][OCaml] Reformat to clean up following CAMLprim removal
The removal of CAMLprim left the code in need of an application of clang-format. There are various other changes made by clang-format which it seems ought to be rolled together into this diff. Differential Revision: https://reviews.llvm.org/D99477
This commit is contained in:
parent
ed4db92995
commit
5dc0418f1b
@ -26,7 +26,8 @@ LLVMModuleRef llvm_get_module(LLVMContextRef C, LLVMMemoryBufferRef MemBuf) {
|
||||
LLVMModuleRef M;
|
||||
|
||||
if (LLVMGetBitcodeModuleInContext2(C, MemBuf, &M))
|
||||
llvm_raise(*caml_named_value("Llvm_bitreader.Error"), LLVMCreateMessage(""));
|
||||
llvm_raise(*caml_named_value("Llvm_bitreader.Error"),
|
||||
LLVMCreateMessage(""));
|
||||
|
||||
return M;
|
||||
}
|
||||
@ -36,7 +37,8 @@ LLVMModuleRef llvm_parse_bitcode(LLVMContextRef C, LLVMMemoryBufferRef MemBuf) {
|
||||
LLVMModuleRef M;
|
||||
|
||||
if (LLVMParseBitcodeInContext2(C, MemBuf, &M))
|
||||
llvm_raise(*caml_named_value("Llvm_bitreader.Error"), LLVMCreateMessage(""));
|
||||
llvm_raise(*caml_named_value("Llvm_bitreader.Error"),
|
||||
LLVMCreateMessage(""));
|
||||
|
||||
return M;
|
||||
}
|
||||
|
@ -221,7 +221,7 @@ LLVMMetadataRef llvm_dibuild_create_compile_unit_native(
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_compile_unit_bytecode(value *argv,
|
||||
int argn) {
|
||||
int argn) {
|
||||
return llvm_dibuild_create_compile_unit_native(
|
||||
argv[0], // Builder
|
||||
argv[1], // Lang
|
||||
@ -241,16 +241,17 @@ LLVMMetadataRef llvm_dibuild_create_compile_unit_bytecode(value *argv,
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_file(value Builder, value Filename,
|
||||
value Directory) {
|
||||
value Directory) {
|
||||
return LLVMDIBuilderCreateFile(DIBuilder_val(Builder), String_val(Filename),
|
||||
caml_string_length(Filename),
|
||||
String_val(Directory),
|
||||
caml_string_length(Directory));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_module_native(
|
||||
value Builder, LLVMMetadataRef ParentScope, value Name, value ConfigMacros,
|
||||
value IncludePath, value SysRoot) {
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_module_native(value Builder, LLVMMetadataRef ParentScope,
|
||||
value Name, value ConfigMacros,
|
||||
value IncludePath, value SysRoot) {
|
||||
return LLVMDIBuilderCreateModule(
|
||||
DIBuilder_val(Builder), ParentScope, String_val(Name),
|
||||
caml_string_length(Name), String_val(ConfigMacros),
|
||||
@ -259,8 +260,7 @@ LLVMMetadataRef llvm_dibuild_create_module_native(
|
||||
caml_string_length(SysRoot));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_module_bytecode(value *argv,
|
||||
int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_module_bytecode(value *argv, int argn) {
|
||||
return llvm_dibuild_create_module_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // ParentScope
|
||||
@ -271,9 +271,9 @@ LLVMMetadataRef llvm_dibuild_create_module_bytecode(value *argv,
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_namespace(value Builder, LLVMMetadataRef ParentScope,
|
||||
value Name, value ExportSymbols) {
|
||||
LLVMMetadataRef llvm_dibuild_create_namespace(value Builder,
|
||||
LLVMMetadataRef ParentScope,
|
||||
value Name, value ExportSymbols) {
|
||||
return LLVMDIBuilderCreateNameSpace(
|
||||
DIBuilder_val(Builder), ParentScope, String_val(Name),
|
||||
caml_string_length(Name), Bool_val(ExportSymbols));
|
||||
@ -290,8 +290,7 @@ LLVMMetadataRef llvm_dibuild_create_function_native(
|
||||
Int_val(ScopeLine), DIFlags_val(Flags), Bool_val(IsOptimized));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_function_bytecode(value *argv,
|
||||
int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_function_bytecode(value *argv, int argn) {
|
||||
return llvm_dibuild_create_function_native(argv[0], // Builder,
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
argv[2], // Name
|
||||
@ -307,18 +306,20 @@ LLVMMetadataRef llvm_dibuild_create_function_bytecode(value *argv,
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_lexical_block(
|
||||
value Builder, LLVMMetadataRef Scope, LLVMMetadataRef File, value Line,
|
||||
value Column) {
|
||||
LLVMMetadataRef llvm_dibuild_create_lexical_block(value Builder,
|
||||
LLVMMetadataRef Scope,
|
||||
LLVMMetadataRef File,
|
||||
value Line, value Column) {
|
||||
return LLVMDIBuilderCreateLexicalBlock(DIBuilder_val(Builder), Scope, File,
|
||||
Int_val(Line), Int_val(Column));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_metadata_null() { return (LLVMMetadataRef)NULL; }
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_debug_location(
|
||||
LLVMContextRef Ctx, value Line, value Column, LLVMMetadataRef Scope,
|
||||
LLVMMetadataRef InlinedAt) {
|
||||
LLVMMetadataRef llvm_dibuild_create_debug_location(LLVMContextRef Ctx,
|
||||
value Line, value Column,
|
||||
LLVMMetadataRef Scope,
|
||||
LLVMMetadataRef InlinedAt) {
|
||||
return LLVMDIBuilderCreateDebugLocation(Ctx, Int_val(Line), Int_val(Column),
|
||||
Scope, InlinedAt);
|
||||
}
|
||||
@ -362,32 +363,32 @@ value llvm_di_file_get_source(LLVMMetadataRef File) {
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_get_or_create_type_array(value Builder,
|
||||
value Data) {
|
||||
value Data) {
|
||||
|
||||
return LLVMDIBuilderGetOrCreateTypeArray(DIBuilder_val(Builder),
|
||||
(LLVMMetadataRef *)Op_val(Data),
|
||||
Wosize_val(Data));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_get_or_create_array(value Builder,
|
||||
value Data) {
|
||||
LLVMMetadataRef llvm_dibuild_get_or_create_array(value Builder, value Data) {
|
||||
|
||||
return LLVMDIBuilderGetOrCreateArray(DIBuilder_val(Builder),
|
||||
(LLVMMetadataRef *)Op_val(Data),
|
||||
Wosize_val(Data));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_subroutine_type(
|
||||
value Builder, LLVMMetadataRef File, value ParameterTypes, value Flags) {
|
||||
LLVMMetadataRef llvm_dibuild_create_subroutine_type(value Builder,
|
||||
LLVMMetadataRef File,
|
||||
value ParameterTypes,
|
||||
value Flags) {
|
||||
|
||||
return LLVMDIBuilderCreateSubroutineType(
|
||||
DIBuilder_val(Builder), File, (LLVMMetadataRef *)Op_val(ParameterTypes),
|
||||
Wosize_val(ParameterTypes), DIFlags_val(Flags));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_enumerator(value Builder,
|
||||
value Name, value Value,
|
||||
value IsUnsigned) {
|
||||
LLVMMetadataRef llvm_dibuild_create_enumerator(value Builder, value Name,
|
||||
value Value, value IsUnsigned) {
|
||||
return LLVMDIBuilderCreateEnumerator(
|
||||
DIBuilder_val(Builder), String_val(Name), caml_string_length(Name),
|
||||
(int64_t)Int_val(Value), Bool_val(IsUnsigned));
|
||||
@ -404,8 +405,8 @@ LLVMMetadataRef llvm_dibuild_create_enumeration_type_native(
|
||||
Wosize_val(Elements), ClassTy);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_enumeration_type_bytecode(value *argv, int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_enumeration_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
return llvm_dibuild_create_enumeration_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
@ -433,8 +434,7 @@ LLVMMetadataRef llvm_dibuild_create_union_type_native(
|
||||
caml_string_length(UniqueId));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_union_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_union_type_bytecode(value *argv, int argn) {
|
||||
return llvm_dibuild_create_union_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
@ -450,34 +450,33 @@ LLVMMetadataRef llvm_dibuild_create_union_type_bytecode(value *argv,
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_array_type(value Builder,
|
||||
value Size,
|
||||
value AlignInBits,
|
||||
LLVMMetadataRef Ty,
|
||||
value Subscripts) {
|
||||
LLVMMetadataRef llvm_dibuild_create_array_type(value Builder, value Size,
|
||||
value AlignInBits,
|
||||
LLVMMetadataRef Ty,
|
||||
value Subscripts) {
|
||||
return LLVMDIBuilderCreateArrayType(
|
||||
DIBuilder_val(Builder), (uint64_t)Int_val(Size), Int_val(AlignInBits), Ty,
|
||||
(LLVMMetadataRef *)Op_val(Subscripts), Wosize_val(Subscripts));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_vector_type(value Builder,
|
||||
value Size,
|
||||
value AlignInBits,
|
||||
LLVMMetadataRef Ty,
|
||||
value Subscripts) {
|
||||
LLVMMetadataRef llvm_dibuild_create_vector_type(value Builder, value Size,
|
||||
value AlignInBits,
|
||||
LLVMMetadataRef Ty,
|
||||
value Subscripts) {
|
||||
return LLVMDIBuilderCreateVectorType(
|
||||
DIBuilder_val(Builder), (uint64_t)Int_val(Size), Int_val(AlignInBits), Ty,
|
||||
(LLVMMetadataRef *)Op_val(Subscripts), Wosize_val(Subscripts));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_unspecified_type(value Builder,
|
||||
value Name) {
|
||||
value Name) {
|
||||
return LLVMDIBuilderCreateUnspecifiedType(
|
||||
DIBuilder_val(Builder), String_val(Name), caml_string_length(Name));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_basic_type(
|
||||
value Builder, value Name, value SizeInBits, value Encoding, value Flags) {
|
||||
LLVMMetadataRef llvm_dibuild_create_basic_type(value Builder, value Name,
|
||||
value SizeInBits, value Encoding,
|
||||
value Flags) {
|
||||
|
||||
return LLVMDIBuilderCreateBasicType(
|
||||
DIBuilder_val(Builder), String_val(Name), caml_string_length(Name),
|
||||
@ -494,7 +493,7 @@ LLVMMetadataRef llvm_dibuild_create_pointer_type_native(
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_pointer_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
int argn) {
|
||||
return llvm_dibuild_create_pointer_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // PointeeTy
|
||||
@ -521,7 +520,7 @@ LLVMMetadataRef llvm_dibuild_create_struct_type_native(
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_struct_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
int argn) {
|
||||
return llvm_dibuild_create_struct_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
@ -552,7 +551,7 @@ LLVMMetadataRef llvm_dibuild_create_member_type_native(
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_member_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
int argn) {
|
||||
return llvm_dibuild_create_member_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
@ -578,8 +577,8 @@ LLVMMetadataRef llvm_dibuild_create_static_member_type_native(
|
||||
Int_val(AlignInBits));
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_static_member_type_bytecode(value *argv, int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_static_member_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
return llvm_dibuild_create_static_member_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Scope
|
||||
@ -602,8 +601,8 @@ LLVMMetadataRef llvm_dibuild_create_member_pointer_type_native(
|
||||
(uint64_t)Int_val(SizeInBits), Int_val(AlignInBits), Flags);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_member_pointer_type_bytecode(value *argv, int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_member_pointer_type_bytecode(value *argv,
|
||||
int argn) {
|
||||
return llvm_dibuild_create_member_pointer_type_native(
|
||||
argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // PointeeType
|
||||
@ -614,20 +613,20 @@ llvm_dibuild_create_member_pointer_type_bytecode(value *argv, int argn) {
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_object_pointer_type(value Builder, LLVMMetadataRef Type) {
|
||||
LLVMMetadataRef llvm_dibuild_create_object_pointer_type(value Builder,
|
||||
LLVMMetadataRef Type) {
|
||||
return LLVMDIBuilderCreateObjectPointerType(DIBuilder_val(Builder), Type);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_qualified_type(
|
||||
value Builder, value Tag, LLVMMetadataRef Type) {
|
||||
LLVMMetadataRef llvm_dibuild_create_qualified_type(value Builder, value Tag,
|
||||
LLVMMetadataRef Type) {
|
||||
|
||||
return LLVMDIBuilderCreateQualifiedType(DIBuilder_val(Builder), Int_val(Tag),
|
||||
Type);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_reference_type(
|
||||
value Builder, value Tag, LLVMMetadataRef Type) {
|
||||
LLVMMetadataRef llvm_dibuild_create_reference_type(value Builder, value Tag,
|
||||
LLVMMetadataRef Type) {
|
||||
|
||||
return LLVMDIBuilderCreateReferenceType(DIBuilder_val(Builder), Int_val(Tag),
|
||||
Type);
|
||||
@ -647,8 +646,7 @@ LLVMMetadataRef llvm_dibuild_create_typedef_native(
|
||||
File, Int_val(LineNo), Scope, Int_val(AlignInBits));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_typedef_bytecode(value *argv,
|
||||
int argn) {
|
||||
LLVMMetadataRef llvm_dibuild_create_typedef_bytecode(value *argv, int argn) {
|
||||
|
||||
return llvm_dibuild_create_typedef_native(argv[0], // Builder
|
||||
(LLVMMetadataRef)argv[1], // Type
|
||||
@ -660,17 +658,17 @@ LLVMMetadataRef llvm_dibuild_create_typedef_bytecode(value *argv,
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_inheritance_native(
|
||||
value Builder, LLVMMetadataRef Ty, LLVMMetadataRef BaseTy, value BaseOffset,
|
||||
value VBPtrOffset, value Flags) {
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_inheritance_native(value Builder, LLVMMetadataRef Ty,
|
||||
LLVMMetadataRef BaseTy, value BaseOffset,
|
||||
value VBPtrOffset, value Flags) {
|
||||
|
||||
return LLVMDIBuilderCreateInheritance(DIBuilder_val(Builder), Ty, BaseTy,
|
||||
(uint64_t)Int_val(BaseOffset),
|
||||
Int_val(VBPtrOffset), Flags);
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_inheritance_bytecode(value *argv,
|
||||
int arg) {
|
||||
LLVMMetadataRef llvm_dibuild_create_inheritance_bytecode(value *argv, int arg) {
|
||||
|
||||
return llvm_dibuild_create_inheritance_native(
|
||||
argv[0], // Builder
|
||||
@ -694,7 +692,7 @@ LLVMMetadataRef llvm_dibuild_create_forward_decl_native(
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_forward_decl_bytecode(value *argv,
|
||||
int arg) {
|
||||
int arg) {
|
||||
|
||||
return llvm_dibuild_create_forward_decl_native(
|
||||
argv[0], // Builder
|
||||
@ -753,8 +751,8 @@ LLVMMetadataRef llvm_dibuild_create_bit_field_member_type_native(
|
||||
DIFlags_val(Flags), Ty);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_bit_field_member_type_bytecode(value *argv, int arg) {
|
||||
LLVMMetadataRef llvm_dibuild_create_bit_field_member_type_bytecode(value *argv,
|
||||
int arg) {
|
||||
|
||||
return llvm_dibuild_create_bit_field_member_type_native(
|
||||
argv[0], // Builder
|
||||
@ -786,8 +784,7 @@ LLVMMetadataRef llvm_dibuild_create_class_type_native(
|
||||
caml_string_length(UniqueIdentifier));
|
||||
}
|
||||
|
||||
LLVMMetadataRef llvm_dibuild_create_class_type_bytecode(value *argv,
|
||||
int arg) {
|
||||
LLVMMetadataRef llvm_dibuild_create_class_type_bytecode(value *argv, int arg) {
|
||||
|
||||
return llvm_dibuild_create_class_type_native(
|
||||
argv[0], // Builder
|
||||
@ -807,8 +804,8 @@ LLVMMetadataRef llvm_dibuild_create_class_type_bytecode(value *argv,
|
||||
);
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_artificial_type(value Builder, LLVMMetadataRef Type) {
|
||||
LLVMMetadataRef llvm_dibuild_create_artificial_type(value Builder,
|
||||
LLVMMetadataRef Type) {
|
||||
return LLVMDIBuilderCreateArtificialType(DIBuilder_val(Builder), Type);
|
||||
}
|
||||
|
||||
@ -860,14 +857,13 @@ value llvm_instr_get_debug_loc(LLVMValueRef Inst) {
|
||||
return (ptr_to_option(LLVMInstructionGetDebugLoc(Inst)));
|
||||
}
|
||||
|
||||
value llvm_instr_set_debug_loc(LLVMValueRef Inst,
|
||||
LLVMMetadataRef Loc) {
|
||||
value llvm_instr_set_debug_loc(LLVMValueRef Inst, LLVMMetadataRef Loc) {
|
||||
LLVMInstructionSetDebugLoc(Inst, Loc);
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
LLVMMetadataRef
|
||||
llvm_dibuild_create_constant_value_expression(value Builder, value Value) {
|
||||
LLVMMetadataRef llvm_dibuild_create_constant_value_expression(value Builder,
|
||||
value Value) {
|
||||
return LLVMDIBuilderCreateConstantValueExpression(DIBuilder_val(Builder),
|
||||
(int64_t)Int_val(Value));
|
||||
}
|
||||
@ -900,8 +896,7 @@ llvm_dibuild_create_global_variable_expression_bytecode(value *argv, int arg) {
|
||||
);
|
||||
}
|
||||
|
||||
value
|
||||
llvm_di_global_variable_expression_get_variable(LLVMMetadataRef GVE) {
|
||||
value llvm_di_global_variable_expression_get_variable(LLVMMetadataRef GVE) {
|
||||
return (ptr_to_option(LLVMDIGlobalVariableExpressionGetVariable(GVE)));
|
||||
}
|
||||
|
||||
|
@ -54,8 +54,8 @@ LLVMExecutionEngineRef llvm_ee_create(value OptRecordOpt, LLVMModuleRef M) {
|
||||
Options.MCJMM = NULL;
|
||||
}
|
||||
|
||||
if (LLVMCreateMCJITCompilerForModule(&MCJIT, M, &Options,
|
||||
sizeof(Options), &Error))
|
||||
if (LLVMCreateMCJITCompilerForModule(&MCJIT, M, &Options, sizeof(Options),
|
||||
&Error))
|
||||
llvm_raise(*caml_named_value("Llvm_executionengine.Error"), Error);
|
||||
return MCJIT;
|
||||
}
|
||||
@ -99,7 +99,7 @@ extern value llvm_alloc_data_layout(LLVMTargetDataRef TargetData);
|
||||
value llvm_ee_get_data_layout(LLVMExecutionEngineRef EE) {
|
||||
value DataLayout;
|
||||
LLVMTargetDataRef OrigDataLayout;
|
||||
char* TargetDataCStr;
|
||||
char *TargetDataCStr;
|
||||
|
||||
OrigDataLayout = LLVMGetExecutionEngineTargetData(EE);
|
||||
TargetDataCStr = LLVMCopyStringRepOfTargetData(OrigDataLayout);
|
||||
@ -111,17 +111,16 @@ value llvm_ee_get_data_layout(LLVMExecutionEngineRef EE) {
|
||||
|
||||
/* Llvm.llvalue -> int64 -> llexecutionengine -> unit */
|
||||
value llvm_ee_add_global_mapping(LLVMValueRef Global, value Ptr,
|
||||
LLVMExecutionEngineRef EE) {
|
||||
LLVMAddGlobalMapping(EE, Global, (void*) (Int64_val(Ptr)));
|
||||
LLVMExecutionEngineRef EE) {
|
||||
LLVMAddGlobalMapping(EE, Global, (void *)(Int64_val(Ptr)));
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
value llvm_ee_get_global_value_address(value Name,
|
||||
LLVMExecutionEngineRef EE) {
|
||||
return caml_copy_int64((int64_t) LLVMGetGlobalValueAddress(EE, String_val(Name)));
|
||||
value llvm_ee_get_global_value_address(value Name, LLVMExecutionEngineRef EE) {
|
||||
return caml_copy_int64(
|
||||
(int64_t)LLVMGetGlobalValueAddress(EE, String_val(Name)));
|
||||
}
|
||||
|
||||
value llvm_ee_get_function_address(value Name,
|
||||
LLVMExecutionEngineRef EE) {
|
||||
return caml_copy_int64((int64_t) LLVMGetFunctionAddress(EE, String_val(Name)));
|
||||
value llvm_ee_get_function_address(value Name, LLVMExecutionEngineRef EE) {
|
||||
return caml_copy_int64((int64_t)LLVMGetFunctionAddress(EE, String_val(Name)));
|
||||
}
|
||||
|
@ -21,8 +21,7 @@
|
||||
void llvm_raise(value Prototype, char *Message);
|
||||
|
||||
/* Llvm.llcontext -> Llvm.llmemorybuffer -> Llvm.llmodule */
|
||||
value llvm_parse_ir(LLVMContextRef C,
|
||||
LLVMMemoryBufferRef MemBuf) {
|
||||
value llvm_parse_ir(LLVMContextRef C, LLVMMemoryBufferRef MemBuf) {
|
||||
CAMLparam0();
|
||||
CAMLlocal2(Variant, MessageVal);
|
||||
LLVMModuleRef M;
|
||||
@ -31,5 +30,5 @@ value llvm_parse_ir(LLVMContextRef C,
|
||||
if (LLVMParseIRInContext(C, MemBuf, &M, &Message))
|
||||
llvm_raise(*caml_named_value("Llvm_irreader.Error"), Message);
|
||||
|
||||
CAMLreturn((value) M);
|
||||
CAMLreturn((value)M);
|
||||
}
|
||||
|
@ -27,7 +27,8 @@ void llvm_raise(value Prototype, char *Message);
|
||||
/* llmodule -> llmodule -> unit */
|
||||
value llvm_link_modules(LLVMModuleRef Dst, LLVMModuleRef Src) {
|
||||
if (LLVMLinkModules2(Dst, Src))
|
||||
llvm_raise(*caml_named_value("Llvm_linker.Error"), LLVMCreateMessage("Linking failed"));
|
||||
llvm_raise(*caml_named_value("Llvm_linker.Error"),
|
||||
LLVMCreateMessage("Linking failed"));
|
||||
|
||||
return Val_unit;
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -26,29 +26,28 @@
|
||||
#include "llvm_ocaml.h"
|
||||
|
||||
void llvm_raise(value Prototype, char *Message);
|
||||
value llvm_string_of_message(char* Message);
|
||||
value llvm_string_of_message(char *Message);
|
||||
|
||||
/*===---- Data Layout -----------------------------------------------------===*/
|
||||
|
||||
#define DataLayout_val(v) (*(LLVMTargetDataRef *)(Data_custom_val(v)))
|
||||
#define DataLayout_val(v) (*(LLVMTargetDataRef *)(Data_custom_val(v)))
|
||||
|
||||
static void llvm_finalize_data_layout(value DataLayout) {
|
||||
LLVMDisposeTargetData(DataLayout_val(DataLayout));
|
||||
}
|
||||
|
||||
static struct custom_operations llvm_data_layout_ops = {
|
||||
(char *) "Llvm_target.DataLayout.t",
|
||||
llvm_finalize_data_layout,
|
||||
custom_compare_default,
|
||||
custom_hash_default,
|
||||
custom_serialize_default,
|
||||
custom_deserialize_default,
|
||||
custom_compare_ext_default
|
||||
};
|
||||
(char *)"Llvm_target.DataLayout.t",
|
||||
llvm_finalize_data_layout,
|
||||
custom_compare_default,
|
||||
custom_hash_default,
|
||||
custom_serialize_default,
|
||||
custom_deserialize_default,
|
||||
custom_compare_ext_default};
|
||||
|
||||
value llvm_alloc_data_layout(LLVMTargetDataRef DataLayout) {
|
||||
value V = alloc_custom(&llvm_data_layout_ops, sizeof(LLVMTargetDataRef),
|
||||
0, 1);
|
||||
value V =
|
||||
alloc_custom(&llvm_data_layout_ops, sizeof(LLVMTargetDataRef), 0, 1);
|
||||
DataLayout_val(V) = DataLayout;
|
||||
return V;
|
||||
}
|
||||
@ -87,9 +86,8 @@ value llvm_datalayout_qualified_pointer_size(value AS, value DL) {
|
||||
}
|
||||
|
||||
/* Llvm.llcontext -> int -> DataLayout.t -> Llvm.lltype */
|
||||
LLVMTypeRef llvm_datalayout_qualified_intptr_type(LLVMContextRef C,
|
||||
value AS,
|
||||
value DL) {
|
||||
LLVMTypeRef llvm_datalayout_qualified_intptr_type(LLVMContextRef C, value AS,
|
||||
value DL) {
|
||||
return LLVMIntPtrTypeForASInContext(C, DataLayout_val(DL), Int_val(AS));
|
||||
}
|
||||
|
||||
@ -125,22 +123,21 @@ value llvm_datalayout_preferred_align(LLVMTypeRef Ty, value DL) {
|
||||
|
||||
/* Llvm.llvalue -> DataLayout.t -> int */
|
||||
value llvm_datalayout_preferred_align_of_global(LLVMValueRef GlobalVar,
|
||||
value DL) {
|
||||
value DL) {
|
||||
return Val_int(LLVMPreferredAlignmentOfGlobal(DataLayout_val(DL), GlobalVar));
|
||||
}
|
||||
|
||||
/* Llvm.lltype -> Int64.t -> DataLayout.t -> int */
|
||||
value llvm_datalayout_element_at_offset(LLVMTypeRef Ty, value Offset,
|
||||
value DL) {
|
||||
return Val_int(LLVMElementAtOffset(DataLayout_val(DL), Ty,
|
||||
Int64_val(Offset)));
|
||||
value DL) {
|
||||
return Val_int(
|
||||
LLVMElementAtOffset(DataLayout_val(DL), Ty, Int64_val(Offset)));
|
||||
}
|
||||
|
||||
/* Llvm.lltype -> int -> DataLayout.t -> Int64.t */
|
||||
value llvm_datalayout_offset_of_element(LLVMTypeRef Ty, value Index,
|
||||
value DL) {
|
||||
return caml_copy_int64(LLVMOffsetOfElement(DataLayout_val(DL), Ty,
|
||||
Int_val(Index)));
|
||||
value llvm_datalayout_offset_of_element(LLVMTypeRef Ty, value Index, value DL) {
|
||||
return caml_copy_int64(
|
||||
LLVMOffsetOfElement(DataLayout_val(DL), Ty, Int_val(Index)));
|
||||
}
|
||||
|
||||
/*===---- Target ----------------------------------------------------------===*/
|
||||
@ -174,7 +171,7 @@ LLVMTargetRef llvm_target_by_triple(value Triple) {
|
||||
LLVMTargetRef T;
|
||||
char *Error;
|
||||
|
||||
if(LLVMGetTargetFromTriple(String_val(Triple), &T, &Error))
|
||||
if (LLVMGetTargetFromTriple(String_val(Triple), &T, &Error))
|
||||
llvm_raise(*caml_named_value("Llvm_target.Error"), Error);
|
||||
|
||||
return T;
|
||||
@ -207,21 +204,20 @@ value llvm_target_has_asm_backend(LLVMTargetRef Target) {
|
||||
|
||||
/*===---- Target Machine --------------------------------------------------===*/
|
||||
|
||||
#define TargetMachine_val(v) (*(LLVMTargetMachineRef *)(Data_custom_val(v)))
|
||||
#define TargetMachine_val(v) (*(LLVMTargetMachineRef *)(Data_custom_val(v)))
|
||||
|
||||
static void llvm_finalize_target_machine(value Machine) {
|
||||
LLVMDisposeTargetMachine(TargetMachine_val(Machine));
|
||||
}
|
||||
|
||||
static struct custom_operations llvm_target_machine_ops = {
|
||||
(char *) "Llvm_target.TargetMachine.t",
|
||||
llvm_finalize_target_machine,
|
||||
custom_compare_default,
|
||||
custom_hash_default,
|
||||
custom_serialize_default,
|
||||
custom_deserialize_default,
|
||||
custom_compare_ext_default
|
||||
};
|
||||
(char *)"Llvm_target.TargetMachine.t",
|
||||
llvm_finalize_target_machine,
|
||||
custom_compare_default,
|
||||
custom_hash_default,
|
||||
custom_serialize_default,
|
||||
custom_deserialize_default,
|
||||
custom_compare_ext_default};
|
||||
|
||||
static value llvm_alloc_targetmachine(LLVMTargetMachineRef Machine) {
|
||||
value V = alloc_custom(&llvm_target_machine_ops, sizeof(LLVMTargetMachineRef),
|
||||
@ -233,35 +229,37 @@ static value llvm_alloc_targetmachine(LLVMTargetMachineRef Machine) {
|
||||
/* triple:string -> ?cpu:string -> ?features:string
|
||||
?level:CodeGenOptLevel.t -> ?reloc_mode:RelocMode.t
|
||||
?code_model:CodeModel.t -> Target.t -> TargetMachine.t */
|
||||
value llvm_create_targetmachine_native(value Triple, value CPU,
|
||||
value Features, value OptLevel, value RelocMode,
|
||||
value CodeModel, LLVMTargetRef Target) {
|
||||
value llvm_create_targetmachine_native(value Triple, value CPU, value Features,
|
||||
value OptLevel, value RelocMode,
|
||||
value CodeModel, LLVMTargetRef Target) {
|
||||
LLVMTargetMachineRef Machine;
|
||||
const char *CPUStr = "", *FeaturesStr = "";
|
||||
LLVMCodeGenOptLevel OptLevelEnum = LLVMCodeGenLevelDefault;
|
||||
LLVMRelocMode RelocModeEnum = LLVMRelocDefault;
|
||||
LLVMCodeModel CodeModelEnum = LLVMCodeModelDefault;
|
||||
|
||||
if(CPU != Val_int(0))
|
||||
if (CPU != Val_int(0))
|
||||
CPUStr = String_val(Field(CPU, 0));
|
||||
if(Features != Val_int(0))
|
||||
if (Features != Val_int(0))
|
||||
FeaturesStr = String_val(Field(Features, 0));
|
||||
if(OptLevel != Val_int(0))
|
||||
if (OptLevel != Val_int(0))
|
||||
OptLevelEnum = Int_val(Field(OptLevel, 0));
|
||||
if(RelocMode != Val_int(0))
|
||||
if (RelocMode != Val_int(0))
|
||||
RelocModeEnum = Int_val(Field(RelocMode, 0));
|
||||
if(CodeModel != Val_int(0))
|
||||
if (CodeModel != Val_int(0))
|
||||
CodeModelEnum = Int_val(Field(CodeModel, 0));
|
||||
|
||||
Machine = LLVMCreateTargetMachine(Target, String_val(Triple), CPUStr,
|
||||
FeaturesStr, OptLevelEnum, RelocModeEnum, CodeModelEnum);
|
||||
Machine =
|
||||
LLVMCreateTargetMachine(Target, String_val(Triple), CPUStr, FeaturesStr,
|
||||
OptLevelEnum, RelocModeEnum, CodeModelEnum);
|
||||
|
||||
return llvm_alloc_targetmachine(Machine);
|
||||
}
|
||||
|
||||
value llvm_create_targetmachine_bytecode(value *argv, int argn) {
|
||||
return llvm_create_targetmachine_native(argv[0], argv[1], argv[2], argv[3],
|
||||
argv[4], argv[5], (LLVMTargetRef) argv[6]);
|
||||
argv[4], argv[5],
|
||||
(LLVMTargetRef)argv[6]);
|
||||
}
|
||||
|
||||
/* TargetMachine.t -> Target.t */
|
||||
@ -271,26 +269,26 @@ LLVMTargetRef llvm_targetmachine_target(value Machine) {
|
||||
|
||||
/* TargetMachine.t -> string */
|
||||
value llvm_targetmachine_triple(value Machine) {
|
||||
return llvm_string_of_message(LLVMGetTargetMachineTriple(
|
||||
TargetMachine_val(Machine)));
|
||||
return llvm_string_of_message(
|
||||
LLVMGetTargetMachineTriple(TargetMachine_val(Machine)));
|
||||
}
|
||||
|
||||
/* TargetMachine.t -> string */
|
||||
value llvm_targetmachine_cpu(value Machine) {
|
||||
return llvm_string_of_message(LLVMGetTargetMachineCPU(
|
||||
TargetMachine_val(Machine)));
|
||||
return llvm_string_of_message(
|
||||
LLVMGetTargetMachineCPU(TargetMachine_val(Machine)));
|
||||
}
|
||||
|
||||
/* TargetMachine.t -> string */
|
||||
value llvm_targetmachine_features(value Machine) {
|
||||
return llvm_string_of_message(LLVMGetTargetMachineFeatureString(
|
||||
TargetMachine_val(Machine)));
|
||||
return llvm_string_of_message(
|
||||
LLVMGetTargetMachineFeatureString(TargetMachine_val(Machine)));
|
||||
}
|
||||
|
||||
/* TargetMachine.t -> DataLayout.t */
|
||||
value llvm_targetmachine_data_layout(value Machine) {
|
||||
return llvm_alloc_data_layout(LLVMCreateTargetDataLayout(
|
||||
TargetMachine_val(Machine)));
|
||||
return llvm_alloc_data_layout(
|
||||
LLVMCreateTargetDataLayout(TargetMachine_val(Machine)));
|
||||
}
|
||||
|
||||
/* bool -> TargetMachine.t -> unit */
|
||||
@ -300,13 +298,13 @@ value llvm_targetmachine_set_verbose_asm(value Verb, value Machine) {
|
||||
}
|
||||
|
||||
/* Llvm.llmodule -> CodeGenFileType.t -> string -> TargetMachine.t -> unit */
|
||||
value llvm_targetmachine_emit_to_file(LLVMModuleRef Module,
|
||||
value FileType, value FileName, value Machine) {
|
||||
value llvm_targetmachine_emit_to_file(LLVMModuleRef Module, value FileType,
|
||||
value FileName, value Machine) {
|
||||
char *ErrorMessage;
|
||||
|
||||
if(LLVMTargetMachineEmitToFile(TargetMachine_val(Machine), Module,
|
||||
(char *)String_val(FileName),
|
||||
Int_val(FileType), &ErrorMessage)) {
|
||||
if (LLVMTargetMachineEmitToFile(TargetMachine_val(Machine), Module,
|
||||
(char *)String_val(FileName),
|
||||
Int_val(FileType), &ErrorMessage)) {
|
||||
llvm_raise(*caml_named_value("Llvm_target.Error"), ErrorMessage);
|
||||
}
|
||||
|
||||
@ -315,15 +313,15 @@ value llvm_targetmachine_emit_to_file(LLVMModuleRef Module,
|
||||
|
||||
/* Llvm.llmodule -> CodeGenFileType.t -> TargetMachine.t ->
|
||||
Llvm.llmemorybuffer */
|
||||
LLVMMemoryBufferRef llvm_targetmachine_emit_to_memory_buffer(
|
||||
LLVMModuleRef Module, value FileType,
|
||||
value Machine) {
|
||||
LLVMMemoryBufferRef
|
||||
llvm_targetmachine_emit_to_memory_buffer(LLVMModuleRef Module, value FileType,
|
||||
value Machine) {
|
||||
char *ErrorMessage;
|
||||
LLVMMemoryBufferRef Buffer;
|
||||
|
||||
if(LLVMTargetMachineEmitToMemoryBuffer(TargetMachine_val(Machine), Module,
|
||||
Int_val(FileType), &ErrorMessage,
|
||||
&Buffer)) {
|
||||
if (LLVMTargetMachineEmitToMemoryBuffer(TargetMachine_val(Machine), Module,
|
||||
Int_val(FileType), &ErrorMessage,
|
||||
&Buffer)) {
|
||||
llvm_raise(*caml_named_value("Llvm_target.Error"), ErrorMessage);
|
||||
}
|
||||
|
||||
@ -332,7 +330,7 @@ LLVMMemoryBufferRef llvm_targetmachine_emit_to_memory_buffer(
|
||||
|
||||
/* TargetMachine.t -> Llvm.PassManager.t -> unit */
|
||||
value llvm_targetmachine_add_analysis_passes(LLVMPassManagerRef PM,
|
||||
value Machine) {
|
||||
value Machine) {
|
||||
LLVMAddAnalysisPasses(TargetMachine_val(Machine), PM);
|
||||
return Val_unit;
|
||||
}
|
||||
|
@ -20,25 +20,21 @@
|
||||
#include "caml/custom.h"
|
||||
#include "caml/misc.h"
|
||||
|
||||
#define PMBuilder_val(v) (*(LLVMPassManagerBuilderRef *)(Data_custom_val(v)))
|
||||
#define PMBuilder_val(v) (*(LLVMPassManagerBuilderRef *)(Data_custom_val(v)))
|
||||
|
||||
static void llvm_finalize_pmbuilder(value PMB) {
|
||||
LLVMPassManagerBuilderDispose(PMBuilder_val(PMB));
|
||||
}
|
||||
|
||||
static struct custom_operations pmbuilder_ops = {
|
||||
(char *) "Llvm_passmgr_builder.t",
|
||||
llvm_finalize_pmbuilder,
|
||||
custom_compare_default,
|
||||
custom_hash_default,
|
||||
custom_serialize_default,
|
||||
custom_deserialize_default,
|
||||
custom_compare_ext_default
|
||||
};
|
||||
(char *)"Llvm_passmgr_builder.t", llvm_finalize_pmbuilder,
|
||||
custom_compare_default, custom_hash_default,
|
||||
custom_serialize_default, custom_deserialize_default,
|
||||
custom_compare_ext_default};
|
||||
|
||||
static value alloc_pmbuilder(LLVMPassManagerBuilderRef Ref) {
|
||||
value Val = alloc_custom(&pmbuilder_ops,
|
||||
sizeof(LLVMPassManagerBuilderRef), 0, 1);
|
||||
value Val =
|
||||
alloc_custom(&pmbuilder_ops, sizeof(LLVMPassManagerBuilderRef), 0, 1);
|
||||
PMBuilder_val(Val) = Ref;
|
||||
return Val;
|
||||
}
|
||||
@ -61,51 +57,46 @@ value llvm_pmbuilder_set_size_level(value SizeLevel, value PMB) {
|
||||
}
|
||||
|
||||
/* int -> t -> unit */
|
||||
value llvm_pmbuilder_use_inliner_with_threshold(
|
||||
value Threshold, value PMB) {
|
||||
value llvm_pmbuilder_use_inliner_with_threshold(value Threshold, value PMB) {
|
||||
LLVMPassManagerBuilderSetOptLevel(PMBuilder_val(PMB), Int_val(Threshold));
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* bool -> t -> unit */
|
||||
value llvm_pmbuilder_set_disable_unit_at_a_time(
|
||||
value DisableUnitAtATime, value PMB) {
|
||||
LLVMPassManagerBuilderSetDisableUnitAtATime(
|
||||
PMBuilder_val(PMB), Bool_val(DisableUnitAtATime));
|
||||
value llvm_pmbuilder_set_disable_unit_at_a_time(value DisableUnitAtATime,
|
||||
value PMB) {
|
||||
LLVMPassManagerBuilderSetDisableUnitAtATime(PMBuilder_val(PMB),
|
||||
Bool_val(DisableUnitAtATime));
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* bool -> t -> unit */
|
||||
value llvm_pmbuilder_set_disable_unroll_loops(
|
||||
value DisableUnroll, value PMB) {
|
||||
LLVMPassManagerBuilderSetDisableUnrollLoops(
|
||||
PMBuilder_val(PMB), Bool_val(DisableUnroll));
|
||||
value llvm_pmbuilder_set_disable_unroll_loops(value DisableUnroll, value PMB) {
|
||||
LLVMPassManagerBuilderSetDisableUnrollLoops(PMBuilder_val(PMB),
|
||||
Bool_val(DisableUnroll));
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* [ `Function ] Llvm.PassManager.t -> t -> unit */
|
||||
value llvm_pmbuilder_populate_function_pass_manager(
|
||||
LLVMPassManagerRef PM, value PMB) {
|
||||
LLVMPassManagerBuilderPopulateFunctionPassManager(
|
||||
PMBuilder_val(PMB), PM);
|
||||
value llvm_pmbuilder_populate_function_pass_manager(LLVMPassManagerRef PM,
|
||||
value PMB) {
|
||||
LLVMPassManagerBuilderPopulateFunctionPassManager(PMBuilder_val(PMB), PM);
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* [ `Module ] Llvm.PassManager.t -> t -> unit */
|
||||
value llvm_pmbuilder_populate_module_pass_manager(
|
||||
LLVMPassManagerRef PM, value PMB) {
|
||||
LLVMPassManagerBuilderPopulateModulePassManager(
|
||||
PMBuilder_val(PMB), PM);
|
||||
value llvm_pmbuilder_populate_module_pass_manager(LLVMPassManagerRef PM,
|
||||
value PMB) {
|
||||
LLVMPassManagerBuilderPopulateModulePassManager(PMBuilder_val(PMB), PM);
|
||||
return Val_unit;
|
||||
}
|
||||
|
||||
/* [ `Module ] Llvm.PassManager.t ->
|
||||
internalize:bool -> run_inliner:bool -> t -> unit */
|
||||
value llvm_pmbuilder_populate_lto_pass_manager(
|
||||
LLVMPassManagerRef PM, value Internalize, value RunInliner,
|
||||
value PMB) {
|
||||
value llvm_pmbuilder_populate_lto_pass_manager(LLVMPassManagerRef PM,
|
||||
value Internalize,
|
||||
value RunInliner, value PMB) {
|
||||
LLVMPassManagerBuilderPopulateLTOPassManager(
|
||||
PMBuilder_val(PMB), PM,
|
||||
Bool_val(Internalize), Bool_val(RunInliner));
|
||||
PMBuilder_val(PMB), PM, Bool_val(Internalize), Bool_val(RunInliner));
|
||||
return Val_unit;
|
||||
}
|
||||
|
@ -183,7 +183,7 @@ value llvm_add_scalar_repl_aggregates_ssa(LLVMPassManagerRef PM) {
|
||||
|
||||
/* int -> [<Llvm.PassManager.any] Llvm.PassManager.t -> unit */
|
||||
value llvm_add_scalar_repl_aggregates_with_threshold(value threshold,
|
||||
LLVMPassManagerRef PM) {
|
||||
LLVMPassManagerRef PM) {
|
||||
LLVMAddScalarReplAggregatesPassWithThreshold(PM, Int_val(threshold));
|
||||
return Val_unit;
|
||||
}
|
||||
|
@ -26,6 +26,4 @@
|
||||
*/
|
||||
|
||||
/* llmodule -> llmodule */
|
||||
LLVMModuleRef llvm_clone_module(LLVMModuleRef M) {
|
||||
return LLVMCloneModule(M);
|
||||
}
|
||||
LLVMModuleRef llvm_clone_module(LLVMModuleRef M) { return LLVMCloneModule(M); }
|
||||
|
Loading…
x
Reference in New Issue
Block a user