(*===-- llvm_debuginfo.ml - LLVM OCaml Interface --------------*- OCaml -*-===*
 *
 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 * See https://llvm.org/LICENSE.txt for license information.
 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 *
 *===----------------------------------------------------------------------===*)

type lldibuilder

(** Source languages known by DWARF. *)
module DWARFSourceLanguageKind = struct
  type t =
    | C89
    | C
    | Ada83
    | C_plus_plus
    | Cobol74
    | Cobol85
    | Fortran77
    | Fortran90
    | Pascal83
    | Modula2
    (*  New in DWARF v3: *)
    | LLVMJava
    | C99
    | Ada95
    | Fortran95
    | PLI
    | ObjC
    | ObjC_plus_plus
    | UPC
    | D
    (*  New in DWARF v4: *)
    | LLVMPython
    (*  New in DWARF v5: *)
    | LLVMOpenCL
    | Go
    | Modula3
    | Haskell
    | C_plus_plus_03
    | C_plus_plus_11
    | OCaml
    | Rust
    | C11
    | Swift
    | Julia
    | Dylan
    | C_plus_plus_14
    | Fortran03
    | Fortran08
    | RenderScript
    | BLISS
    (*  Vendor extensions: *)
    | LLVMMips_Assembler
    | GOOGLE_RenderScript
    | BORLAND_Delphi
end

module DIFlag = struct
  type t =
    | Zero
    | Private
    | Protected
    | Public
    | FwdDecl
    | AppleBlock
    | ReservedBit4
    | Virtual
    | Artificial
    | Explicit
    | Prototyped
    | ObjcClassComplete
    | ObjectPointer
    | Vector
    | StaticMember
    | LValueReference
    | RValueReference
    | Reserved
    | SingleInheritance
    | MultipleInheritance
    | VirtualInheritance
    | IntroducedVirtual
    | BitField
    | NoReturn
    | TypePassByValue
    | TypePassByReference
    | EnumClass
    | FixedEnum
    | Thunk
    | NonTrivial
    | BigEndian
    | LittleEndian
    | IndirectVirtualBase
    | Accessibility
    | PtrToMemberRep
end

type lldiflags

external diflags_get : DIFlag.t -> lldiflags = "llvm_diflags_get"

external diflags_set : lldiflags -> DIFlag.t -> lldiflags = "llvm_diflags_set"

external diflags_test : lldiflags -> DIFlag.t -> bool = "llvm_diflags_test"

(** The kind of metadata nodes. *)
module MetadataKind = struct
  type t =
    | MDStringMetadataKind
    | ConstantAsMetadataMetadataKind
    | LocalAsMetadataMetadataKind
    | DistinctMDOperandPlaceholderMetadataKind
    | MDTupleMetadataKind
    | DILocationMetadataKind
    | DIExpressionMetadataKind
    | DIGlobalVariableExpressionMetadataKind
    | GenericDINodeMetadataKind
    | DISubrangeMetadataKind
    | DIEnumeratorMetadataKind
    | DIBasicTypeMetadataKind
    | DIDerivedTypeMetadataKind
    | DICompositeTypeMetadataKind
    | DISubroutineTypeMetadataKind
    | DIFileMetadataKind
    | DICompileUnitMetadataKind
    | DISubprogramMetadataKind
    | DILexicalBlockMetadataKind
    | DILexicalBlockFileMetadataKind
    | DINamespaceMetadataKind
    | DIModuleMetadataKind
    | DITemplateTypeParameterMetadataKind
    | DITemplateValueParameterMetadataKind
    | DIGlobalVariableMetadataKind
    | DILocalVariableMetadataKind
    | DILabelMetadataKind
    | DIObjCPropertyMetadataKind
    | DIImportedEntityMetadataKind
    | DIMacroMetadataKind
    | DIMacroFileMetadataKind
    | DICommonBlockMetadataKind
end

(** The amount of debug information to emit. *)
module DWARFEmissionKind = struct
  type t = None | Full | LineTablesOnly
end

external debug_metadata_version : unit -> int = "llvm_debug_metadata_version"

external get_module_debug_metadata_version : Llvm.llmodule -> int
  = "llvm_get_module_debug_metadata_version"

external dibuilder : Llvm.llmodule -> lldibuilder = "llvm_dibuilder"

external dibuild_finalize : lldibuilder -> unit = "llvm_dibuild_finalize"

(* See LLVMDIBuilderCreateCompileUnit for argument details. *)
external dibuild_create_compile_unit :
  lldibuilder ->
  DWARFSourceLanguageKind.t ->
  file_ref:Llvm.llmetadata ->
  producer:string ->
  is_optimized:bool ->
  flags:string ->
  runtime_ver:int ->
  split_name:string ->
  DWARFEmissionKind.t ->
  dwoid:int ->
  di_inlining:bool ->
  di_profiling:bool ->
  sys_root:string ->
  sdk:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_compile_unit_bytecode" "llvm_dibuild_create_compile_unit_native"

external dibuild_create_file :
  lldibuilder -> filename:string -> directory:string -> Llvm.llmetadata
  = "llvm_dibuild_create_file"

external dibuild_create_module :
  lldibuilder ->
  parent_ref:Llvm.llmetadata ->
  name:string ->
  config_macros:string ->
  include_path:string ->
  sys_root:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_module_bytecode" "llvm_dibuild_create_module_native"

external dibuild_create_namespace :
  lldibuilder ->
  parent_ref:Llvm.llmetadata ->
  name:string ->
  export_symbols:bool ->
  Llvm.llmetadata = "llvm_dibuild_create_namespace"

external dibuild_create_function :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  linkage_name:string ->
  file:Llvm.llmetadata ->
  line_no:int ->
  ty:Llvm.llmetadata ->
  is_local_to_unit:bool ->
  is_definition:bool ->
  scope_line:int ->
  flags:lldiflags ->
  is_optimized:bool ->
  Llvm.llmetadata
  = "llvm_dibuild_create_function_bytecode" "llvm_dibuild_create_function_native"

external dibuild_create_lexical_block :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  file:Llvm.llmetadata ->
  line:int ->
  column:int ->
  Llvm.llmetadata = "llvm_dibuild_create_lexical_block"

external dibuild_create_debug_location_helper :
  Llvm.llcontext ->
  line:int ->
  column:int ->
  scope:Llvm.llmetadata ->
  inlined_at:Llvm.llmetadata ->
  Llvm.llmetadata = "llvm_dibuild_create_debug_location"

external llmetadata_null : unit -> Llvm.llmetadata = "llvm_metadata_null"

let dibuild_create_debug_location ?(inlined_at = llmetadata_null ()) llctx ~line
    ~column ~scope =
  dibuild_create_debug_location_helper llctx ~line ~column ~scope ~inlined_at

external di_location_get_line : location:Llvm.llmetadata -> int
  = "llvm_di_location_get_line"

external di_location_get_column : location:Llvm.llmetadata -> int
  = "llvm_di_location_get_column"

external di_location_get_scope : location:Llvm.llmetadata -> Llvm.llmetadata
  = "llvm_di_location_get_scope"

external di_location_get_inlined_at :
  location:Llvm.llmetadata -> Llvm.llmetadata option
  = "llvm_di_location_get_inlined_at"

external di_scope_get_file : scope:Llvm.llmetadata -> Llvm.llmetadata option
  = "llvm_di_scope_get_file"

external di_file_get_directory : file:Llvm.llmetadata -> string
  = "llvm_di_file_get_directory"

external di_file_get_filename : file:Llvm.llmetadata -> string
  = "llvm_di_file_get_filename"

external di_file_get_source : file:Llvm.llmetadata -> string
  = "llvm_di_file_get_source"

external dibuild_get_or_create_type_array :
  lldibuilder -> data:Llvm.llmetadata array -> Llvm.llmetadata
  = "llvm_dibuild_get_or_create_type_array"

external dibuild_get_or_create_array :
  lldibuilder -> data:Llvm.llmetadata array -> Llvm.llmetadata
  = "llvm_dibuild_get_or_create_array"

external dibuild_create_subroutine_type :
  lldibuilder ->
  file:Llvm.llmetadata ->
  param_types:Llvm.llmetadata array ->
  lldiflags ->
  Llvm.llmetadata = "llvm_dibuild_create_subroutine_type"

external dibuild_create_enumerator :
  lldibuilder -> name:string -> value:int -> is_unsigned:bool -> Llvm.llmetadata
  = "llvm_dibuild_create_enumerator"

external dibuild_create_enumeration_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  elements:Llvm.llmetadata array ->
  class_ty:Llvm.llmetadata ->
  Llvm.llmetadata
  = "llvm_dibuild_create_enumeration_type_bytecode" "llvm_dibuild_create_enumeration_type_native"

external dibuild_create_union_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  lldiflags ->
  elements:Llvm.llmetadata array ->
  run_time_language:int ->
  unique_id:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_union_type_bytecode" "llvm_dibuild_create_union_type_native"

external dibuild_create_array_type :
  lldibuilder ->
  size:int ->
  align_in_bits:int ->
  ty:Llvm.llmetadata ->
  subscripts:Llvm.llmetadata array ->
  Llvm.llmetadata = "llvm_dibuild_create_array_type"

external dibuild_create_vector_type :
  lldibuilder ->
  size:int ->
  align_in_bits:int ->
  ty:Llvm.llmetadata ->
  subscripts:Llvm.llmetadata array ->
  Llvm.llmetadata = "llvm_dibuild_create_array_type"

external dibuild_create_unspecified_type :
  lldibuilder -> name:string -> Llvm.llmetadata
  = "llvm_dibuild_create_unspecified_type"

external dibuild_create_basic_type :
  lldibuilder ->
  name:string ->
  size_in_bits:int ->
  encoding:int ->
  lldiflags ->
  Llvm.llmetadata = "llvm_dibuild_create_basic_type"

external dibuild_create_pointer_type :
  lldibuilder ->
  pointee_ty:Llvm.llmetadata ->
  size_in_bits:int ->
  align_in_bits:int ->
  address_space:int ->
  name:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_pointer_type_bytecode" "llvm_dibuild_create_pointer_type_native"

external dibuild_create_struct_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  lldiflags ->
  derived_from:Llvm.llmetadata ->
  elements:Llvm.llmetadata array ->
  DWARFSourceLanguageKind.t ->
  vtable_holder:Llvm.llmetadata ->
  unique_id:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_struct_type_bytecode" "llvm_dibuild_create_struct_type_native"

external dibuild_create_member_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  offset_in_bits:int ->
  lldiflags ->
  ty:Llvm.llmetadata ->
  Llvm.llmetadata
  = "llvm_dibuild_create_member_type_bytecode" "llvm_dibuild_create_member_type_native"

external dibuild_create_static_member_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  ty:Llvm.llmetadata ->
  lldiflags ->
  const_val:Llvm.llvalue ->
  align_in_bits:int ->
  Llvm.llmetadata
  = "llvm_dibuild_create_static_member_type_bytecode" "llvm_dibuild_create_static_member_type_native"

external dibuild_create_member_pointer_type :
  lldibuilder ->
  pointee_type:Llvm.llmetadata ->
  class_type:Llvm.llmetadata ->
  size_in_bits:int ->
  align_in_bits:int ->
  lldiflags ->
  Llvm.llmetadata
  = "llvm_dibuild_create_member_pointer_type_bytecode" "llvm_dibuild_create_member_pointer_type_native"

external dibuild_create_object_pointer_type :
  lldibuilder -> Llvm.llmetadata -> Llvm.llmetadata
  = "llvm_dibuild_create_object_pointer_type"

external dibuild_create_qualified_type :
  lldibuilder -> tag:int -> Llvm.llmetadata -> Llvm.llmetadata
  = "llvm_dibuild_create_qualified_type"

external dibuild_create_reference_type :
  lldibuilder -> tag:int -> Llvm.llmetadata -> Llvm.llmetadata
  = "llvm_dibuild_create_reference_type"

external dibuild_create_null_ptr_type : lldibuilder -> Llvm.llmetadata
  = "llvm_dibuild_create_null_ptr_type"

external dibuild_create_typedef :
  lldibuilder ->
  ty:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_no:int ->
  scope:Llvm.llmetadata ->
  align_in_bits:int ->
  Llvm.llmetadata
  = "llvm_dibuild_create_typedef_bytecode" "llvm_dibuild_create_typedef_native"

external dibuild_create_inheritance :
  lldibuilder ->
  ty:Llvm.llmetadata ->
  base_ty:Llvm.llmetadata ->
  base_offset:int ->
  vb_ptr_offset:int ->
  lldiflags ->
  Llvm.llmetadata
  = "llvm_dibuild_create_inheritance_bytecode" "llvm_dibuild_create_inheritance_native"

external dibuild_create_forward_decl :
  lldibuilder ->
  tag:int ->
  name:string ->
  scope:Llvm.llmetadata ->
  file:Llvm.llmetadata ->
  line:int ->
  runtime_lang:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  unique_identifier:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_forward_decl_bytecode" "llvm_dibuild_create_forward_decl_native"

external dibuild_create_replaceable_composite_type :
  lldibuilder ->
  tag:int ->
  name:string ->
  scope:Llvm.llmetadata ->
  file:Llvm.llmetadata ->
  line:int ->
  runtime_lang:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  lldiflags ->
  unique_identifier:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_replaceable_composite_type_bytecode" "llvm_dibuild_create_replaceable_composite_type_native"

external dibuild_create_bit_field_member_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_num:int ->
  size_in_bits:int ->
  offset_in_bits:int ->
  storage_offset_in_bits:int ->
  lldiflags ->
  ty:Llvm.llmetadata ->
  Llvm.llmetadata
  = "llvm_dibuild_create_bit_field_member_type_bytecode" "llvm_dibuild_create_bit_field_member_type_native"

external dibuild_create_class_type :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line_number:int ->
  size_in_bits:int ->
  align_in_bits:int ->
  offset_in_bits:int ->
  lldiflags ->
  derived_from:Llvm.llmetadata ->
  elements:Llvm.llmetadata array ->
  vtable_holder:Llvm.llmetadata ->
  template_params_node:Llvm.llmetadata ->
  unique_identifier:string ->
  Llvm.llmetadata
  = "llvm_dibuild_create_class_type_bytecode" "llvm_dibuild_create_class_type_native"

external dibuild_create_artificial_type :
  lldibuilder -> ty:Llvm.llmetadata -> Llvm.llmetadata
  = "llvm_dibuild_create_artificial_type"

external di_type_get_name : Llvm.llmetadata -> string = "llvm_di_type_get_name"

external di_type_get_size_in_bits : Llvm.llmetadata -> int
  = "llvm_di_type_get_size_in_bits"

external di_type_get_offset_in_bits : Llvm.llmetadata -> int
  = "llvm_di_type_get_offset_in_bits"

external di_type_get_align_in_bits : Llvm.llmetadata -> int
  = "llvm_di_type_get_align_in_bits"

external di_type_get_line : Llvm.llmetadata -> int = "llvm_di_type_get_line"

external di_type_get_flags : Llvm.llmetadata -> lldiflags
  = "llvm_di_type_get_flags"

external get_subprogram : Llvm.llvalue -> Llvm.llmetadata option
  = "llvm_get_subprogram"

external set_subprogram : Llvm.llvalue -> Llvm.llmetadata -> unit
  = "llvm_set_subprogram"

external di_subprogram_get_line : Llvm.llmetadata -> int
  = "llvm_di_subprogram_get_line"

external instr_get_debug_loc : Llvm.llvalue -> Llvm.llmetadata option
  = "llvm_instr_get_debug_loc"

external instr_set_debug_loc_helper : Llvm.llvalue -> Llvm.llmetadata -> unit
  = "llvm_instr_set_debug_loc"

let instr_set_debug_loc i mopt =
  match mopt with
  | None -> instr_set_debug_loc_helper i (llmetadata_null ())
  | Some m -> instr_set_debug_loc_helper i m

external dibuild_create_constant_value_expression :
  lldibuilder -> int -> Llvm.llmetadata
  = "llvm_dibuild_create_constant_value_expression"

external dibuild_create_global_variable_expression :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  linkage:string ->
  file:Llvm.llmetadata ->
  line:int ->
  ty:Llvm.llmetadata ->
  is_local_to_unit:bool ->
  expr:Llvm.llmetadata ->
  decl:Llvm.llmetadata ->
  align_in_bits:int ->
  Llvm.llmetadata
  = "llvm_dibuild_create_global_variable_expression_bytecode" "llvm_dibuild_create_global_variable_expression_native"

external di_global_variable_expression_get_variable :
  Llvm.llmetadata -> Llvm.llmetadata option
  = "llvm_di_global_variable_expression_get_variable"

external di_variable_get_line : Llvm.llmetadata -> int
  = "llvm_di_variable_get_line"

external di_variable_get_file : Llvm.llmetadata -> Llvm.llmetadata option
  = "llvm_di_variable_get_file"

external get_metadata_kind : Llvm.llmetadata -> MetadataKind.t
  = "llvm_get_metadata_kind"

external dibuild_create_auto_variable :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  file:Llvm.llmetadata ->
  line:int ->
  ty:Llvm.llmetadata ->
  always_preserve:bool ->
  lldiflags ->
  align_in_bits:int ->
  Llvm.llmetadata
  = "llvm_dibuild_create_auto_variable_bytecode" "llvm_dibuild_create_auto_variable_native"

external dibuild_create_parameter_variable :
  lldibuilder ->
  scope:Llvm.llmetadata ->
  name:string ->
  argno:int ->
  file:Llvm.llmetadata ->
  line:int ->
  ty:Llvm.llmetadata ->
  always_preserve:bool ->
  lldiflags ->
  Llvm.llmetadata
  = "llvm_dibuild_create_parameter_variable_bytecode" "llvm_dibuild_create_parameter_variable_native"

external dibuild_insert_declare_before :
  lldibuilder ->
  storage:Llvm.llvalue ->
  var_info:Llvm.llmetadata ->
  expr:Llvm.llmetadata ->
  location:Llvm.llmetadata ->
  instr:Llvm.llvalue ->
  Llvm.llvalue
  = "llvm_dibuild_insert_declare_before_bytecode" "llvm_dibuild_insert_declare_before_native"

external dibuild_insert_declare_at_end :
  lldibuilder ->
  storage:Llvm.llvalue ->
  var_info:Llvm.llmetadata ->
  expr:Llvm.llmetadata ->
  location:Llvm.llmetadata ->
  block:Llvm.llbasicblock ->
  Llvm.llvalue
  = "llvm_dibuild_insert_declare_at_end_bytecode" "llvm_dibuild_insert_declare_at_end_native"

external dibuild_expression :
  lldibuilder ->
  Int64.t array ->
  Llvm.llmetadata
  = "llvm_dibuild_expression"
