[llvm] 11f59c5 - [OCaml][Test] Fix and enable debuginfo.ml test
Vaivaswatha Nagaraj via llvm-commits
llvm-commits at lists.llvm.org
Sat Mar 27 18:13:51 PDT 2021
Author: Vaivaswatha Nagaraj
Date: 2021-03-28T06:25:39+05:30
New Revision: 11f59c5457d5215071ccd1c07bcdef3cb07d520c
URL: https://github.com/llvm/llvm-project/commit/11f59c5457d5215071ccd1c07bcdef3cb07d520c
DIFF: https://github.com/llvm/llvm-project/commit/11f59c5457d5215071ccd1c07bcdef3cb07d520c.diff
LOG: [OCaml][Test] Fix and enable debuginfo.ml test
`get_or_create_type_array` was used on a non-type MDNode.
Add interface for `get_or_create_array` and use that instead.
Differential Revision: https://reviews.llvm.org/D99450
Added:
llvm/test/Bindings/OCaml/debuginfo.ml
Modified:
llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
Removed:
llvm/test/Bindings/OCaml/debuginfo.ml.disable
################################################################################
diff --git a/llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c b/llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
index 7ed0cdf09a0d..11c260735c4e 100644
--- a/llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
+++ b/llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
@@ -369,6 +369,14 @@ CAMLprim LLVMMetadataRef llvm_dibuild_get_or_create_type_array(value Builder,
Wosize_val(Data));
}
+CAMLprim LLVMMetadataRef llvm_dibuild_get_or_create_array(value Builder,
+ value Data) {
+
+ return LLVMDIBuilderGetOrCreateArray(DIBuilder_val(Builder),
+ (LLVMMetadataRef *)Op_val(Data),
+ Wosize_val(Data));
+}
+
CAMLprim LLVMMetadataRef llvm_dibuild_create_subroutine_type(
value Builder, LLVMMetadataRef File, value ParameterTypes, value Flags) {
diff --git a/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml b/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
index 43e7390863e8..232efd4cdd38 100644
--- a/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
+++ b/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
@@ -262,6 +262,10 @@ 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 ->
diff --git a/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli b/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
index 3c764e8b856a..7f2bb6dd53bf 100644
--- a/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
+++ b/llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
@@ -282,6 +282,11 @@ val dibuild_get_or_create_type_array :
(** [dibuild_get_or_create_type_array] Create a type array.
See LLVMDIBuilderGetOrCreateTypeArray. *)
+val dibuild_get_or_create_array :
+ lldibuilder -> data:Llvm.llmetadata array -> Llvm.llmetadata
+(** [dibuild_get_or_create_array] Create an array of DI Nodes.
+ See LLVMDIBuilderGetOrCreateArray. *)
+
val dibuild_create_constant_value_expression :
lldibuilder -> int -> Llvm.llmetadata
(** [dibuild_create_constant_value_expression] Create a new descriptor for
diff --git a/llvm/test/Bindings/OCaml/debuginfo.ml.disable b/llvm/test/Bindings/OCaml/debuginfo.ml
similarity index 99%
rename from llvm/test/Bindings/OCaml/debuginfo.ml.disable
rename to llvm/test/Bindings/OCaml/debuginfo.ml
index 575fddea6f19..d07d7592fb26 100644
--- a/llvm/test/Bindings/OCaml/debuginfo.ml.disable
+++ b/llvm/test/Bindings/OCaml/debuginfo.ml
@@ -339,7 +339,7 @@ let test_types dibuilder file_di m_di =
~align_in_bits:0 ~elements ~class_ty:int64_ty_di
in
let elements_arr =
- Llvm_debuginfo.dibuild_get_or_create_type_array dibuilder ~data:elements
+ Llvm_debuginfo.dibuild_get_or_create_array dibuilder ~data:elements
in
stdout_metadata elements_arr;
(* CHECK: [[ELEMENTS_PTR:<0x[0-9a-f]*>]] = !{[[ENUMERATOR1_PTR]], [[ENUMERATOR2_PTR]], [[ENUMERATOR3_PTR]]}
More information about the llvm-commits
mailing list