[PATCH] D136400: [llvm-ocaml] Migrate from naked pointers to prepare for OCaml 5

Josh Berdine via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 25 04:07:47 PST 2023


jberdine added inline comments.


================
Comment at: llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c:364
+value llvm_dibuild_get_or_create_type_array(value Builder, value Data) {
+  unsigned int Count = Wosize_val(Data);
+  LLVMMetadataRef *Temp = from_val_array(Data);
----------------
several `unsigned` ought to be `mlsize_t` in this file


================
Comment at: llvm/bindings/ocaml/executionengine/executionengine_ocaml.c:103-104
+value llvm_ee_get_data_layout(value EE) {
+  CAMLparam0();
+  CAMLlocal1(DataLayout);
   LLVMTargetDataRef OrigDataLayout;
----------------
left over


================
Comment at: llvm/bindings/ocaml/llvm/llvm_ocaml.c:811-812
+value llvm_string_of_llvalue(value M) {
+  CAMLparam0();
+  CAMLlocal1(ValueStr);
+  char *ValueCStr = LLVMPrintValueToString(Value_val(M));
----------------
jberdine wrote:
> Left over?
still left over


================
Comment at: llvm/bindings/ocaml/llvm/llvm_ocaml.h:1
+
 /*===-- llvm_ocaml.h - LLVM OCaml Glue --------------------------*- C++ -*-===*\
----------------
intended?


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:57
 value llvm_datalayout_of_string(value StringRep) {
-  return llvm_alloc_data_layout(LLVMCreateTargetData(String_val(StringRep)));
+  CAMLparam1(StringRep);
+  CAMLreturn(
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:64-65
 value llvm_datalayout_as_string(value TD) {
+  CAMLparam1(TD);
+  CAMLlocal1(Copy);
   char *StringRep = LLVMCopyStringRepOfTargetData(DataLayout_val(TD));
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:148
+value llvm_datalayout_offset_of_element(value Ty, value Index, value DL) {
+  CAMLparam1(DL);
+  CAMLreturn(caml_copy_int64(
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:159-160
 value llvm_target_default_triple(value Unit) {
+  CAMLparam0();
+  CAMLlocal1(TripleStr);
   char *TripleCStr = LLVMGetDefaultTargetTriple();
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:179
 value llvm_target_by_name(value Name) {
-  return ptr_to_option(LLVMGetTargetFromName(String_val(Name)));
+  CAMLparam1(Name);
+  CAMLreturn(ptr_to_option(LLVMGetTargetFromName(String_val(Name))));
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:185
+value llvm_target_by_triple(value Triple) {
+  CAMLparam1(Triple);
   LLVMTargetRef T;
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:250-251
+                                       value CodeModel, value Target) {
+  CAMLparam5(Triple, CPU, Features, OptLevel, RelocMode);
+  CAMLxparam2(CodeModel, Target);
   LLVMTargetMachineRef Machine;
----------------
left over


================
Comment at: llvm/bindings/ocaml/target/target_ocaml.c:319
                                       value FileName, value Machine) {
+  CAMLparam1(FileName);
   char *ErrorMessage;
----------------
left over


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136400/new/

https://reviews.llvm.org/D136400



More information about the llvm-commits mailing list