Page MenuHomePhabricator
Feed Advanced Search

Oct 21 2022

jberdine added a reviewer for D136400: [llvm-ocaml] Migrate from naked pointers to prepare for OCaml 5: vaivaswatha.
Oct 21 2022, 5:51 AM · Restricted Project, Restricted Project
jberdine updated subscribers of D136400: [llvm-ocaml] Migrate from naked pointers to prepare for OCaml 5.
Oct 21 2022, 3:24 AM · Restricted Project, Restricted Project

Sep 30 2022

jberdine added inline comments to D134916: [llvm-ocaml] Add binding for constructing opaque pointers.
Sep 30 2022, 2:43 PM · Restricted Project, Restricted Project

Aug 22 2022

jberdine added a comment to D132084: [Cloning] handle blockaddress array clone in the same module.

I'm not sure I have all the context, but it sounds like perhaps interpret.c from pr3120 could be a useful test case.

Aug 22 2022, 2:20 AM · Restricted Project, Restricted Project

Apr 25 2022

jberdine added a comment to D124063: [LegacyPM] Rename and deprecate populateModulePassManager.

Apologies if this isn't directly related to this patch in particular, but is there a more informative message that could be given than "Migrate to new pass manager"? In particular, for non-C language bindings that currently call LLVMPassManagerBuilderPopulateModulePassManager, any pointers to what functions in the C API should be used instead would be very helpful.

Apr 25 2022, 12:38 PM · Restricted Project, Restricted Project, Restricted Project

Apr 23 2022

jberdine accepted D123914: [OCaml][DebugInfo] Add bindings for parameter and auto variable creation.

LGTM, though I would prefer if docstrings were added for each of the functions added to llvm_debuginfo.mli.

Apr 23 2022, 1:12 PM · Restricted Project, Restricted Project

Feb 16 2022

jberdine accepted D119884: [llvm] [bindings/OCaml] Remove unused dep on ounit2.

Looks good, thanks!

Feb 16 2022, 7:03 AM · Restricted Project

Feb 15 2022

jberdine added a comment to D119079: [llvm] [cmake] Fix finding modern ounit2.

Heh, yeah, it seems that the best fix would be to just remove the traces of ounit. I also don't see where they are used, so just removing and seeing if the tests pass in a context with no ounit installed seems like a good plan.

Feb 15 2022, 5:37 AM · Restricted Project

Feb 12 2022

jberdine accepted D119079: [llvm] [cmake] Fix finding modern ounit2.

Thanks both!

Feb 12 2022, 2:29 AM · Restricted Project

Feb 11 2022

jberdine updated subscribers of D119079: [llvm] [cmake] Fix finding modern ounit2.

I am not so familiar with cmake and ocamlfind, what do you think @arbipher? @vaivaswatha?

Feb 11 2022, 12:42 PM · Restricted Project

Sep 10 2021

jberdine added a comment to D109590: [NFCI] Rename functions LLVMDIBuilder* to llvmDIBuilder*.

The rest of the C API uses an "LLVM" prefix. Does it really make sense to use a different one for the DIBuilder functions?

Sep 10 2021, 3:38 AM · Restricted Project, debug-info

Jun 9 2021

jberdine added inline comments to D103910: [llvm] Sync DebugInfo.h with DebugInfoFlags.def.
Jun 9 2021, 7:41 AM · Restricted Project
jberdine accepted D103910: [llvm] Sync DebugInfo.h with DebugInfoFlags.def.

LGTM. No-one should be using enum tags named "Reserved" so I'm not worried about compatibility.

Jun 9 2021, 7:22 AM · Restricted Project

May 5 2021

jberdine accepted D101639: Add build_fence to OCaml bindings.

LGTM now, thanks! FTR local testing yields:

❯ ninja bindings/ocaml/all check-llvm-bindings-ocaml
[2598/2599] Running lit suite /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml
May 5 2021, 2:03 PM · Restricted Project

May 4 2021

jberdine added a comment to D101639: Add build_fence to OCaml bindings.

I did a bit of hunting. The name string must be empty or else LLVMBuildFence will assert. It seems to me that

FenceInst *CreateFence(AtomicOrdering Ordering,
                       SyncScope::ID SSID = SyncScope::System,
                       const Twine &Name = "") {
  return Insert(new FenceInst(Context, Ordering, SSID), Name);
}

in IRBuilder.h should be

FenceInst *CreateFence(AtomicOrdering Ordering,
                       SyncScope::ID SSID = SyncScope::System) {
  return Insert(new FenceInst(Context, Ordering, SSID));
}

and LLVMBuildFence should not take Name as an argument.

May 4 2021, 2:26 PM · Restricted Project
jberdine requested changes to D101639: Add build_fence to OCaml bindings.

There is an issue. The fence instruction always returns type void. An SSA name is not permitted for values of type void. The test complains:

> ninja bindings/ocaml/all check-llvm-bindings-ocaml
[17/18] Running lit suite /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml
FAIL: LLVM :: Bindings/OCaml/core.ml (1 of 16)
******************** TEST 'LLVM :: Bindings/OCaml/core.ml' FAILED ********************
Script:
--
: 'RUN: at line 1';   rm -rf /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp && mkdir -p /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp && cp /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml/core.ml /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/core.ml && cp /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml/Utils/Testsuite.ml /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/Testsuite.ml
: 'RUN: at line 2';   /Users/jjb/.opam/sledge/bin/ocamlfind ocamlc -cclib -L/Users/jjb/src/llvm-project/_build/test/../lib  -g -w +A -package llvm.analysis -package llvm.bitwriter -I /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/ -linkpkg /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/Testsuite.ml /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/core.ml -o /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/executable
: 'RUN: at line 3';   /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/executable /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/bitcode.bc
: 'RUN: at line 4';   /Users/jjb/.opam/sledge/bin/ocamlfind ocamlopt -cclib -L/Users/jjb/src/llvm-project/_build/test/../lib -cclib -Wl,-rpath,/Users/jjb/src/llvm-project/_build/test/../lib  -g -w +A -package llvm.analysis -package llvm.bitwriter -I /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/ -linkpkg /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/Testsuite.ml /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/core.ml -o /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/executable
: 'RUN: at line 5';   /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/executable /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/bitcode.bc
: 'RUN: at line 6';   /Users/jjb/src/llvm-project/_build/bin/llvm-dis < /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/bitcode.bc > /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/dis.ll
: 'RUN: at line 7';   /Users/jjb/src/llvm-project/_build/bin/FileCheck /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml/core.ml < /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/dis.ll
: 'RUN: at line 9';   /Users/jjb/src/llvm-project/_build/bin/FileCheck -check-prefix=CHECK-NOWHERE /Users/jjb/src/llvm-project/llvm/test/Bindings/OCaml/core.ml < /Users/jjb/src/llvm-project/_build/test/Bindings/OCaml/Output/core.ml.tmp/dis.ll
--
Exit Code: 134
May 4 2021, 7:15 AM · Restricted Project
jberdine added a comment to D101639: Add build_fence to OCaml bindings.

I will try the tests locally

May 4 2021, 6:20 AM · Restricted Project
jberdine accepted D101639: Add build_fence to OCaml bindings.

Thanks! LGTM

May 4 2021, 6:14 AM · Restricted Project
jberdine added a comment to D101639: Add build_fence to OCaml bindings.

Thanks, the docs look good.

May 4 2021, 5:51 AM · Restricted Project

May 1 2021

jberdine added inline comments to D101639: Add build_fence to OCaml bindings.
May 1 2021, 2:02 PM · Restricted Project
jberdine requested changes to D101639: Add build_fence to OCaml bindings.

Looks good apart from a typo, and a bit more documentation.

May 1 2021, 1:12 PM · Restricted Project

Apr 5 2021

jberdine committed rG8e4fc55a0e54: [NFC][OCaml] Remove vestigial CAMLprim declarations (authored by jberdine).
[NFC][OCaml] Remove vestigial CAMLprim declarations
Apr 5 2021, 2:59 AM
jberdine committed rGf4d156aed0f8: [NFC][OCaml] Reformat to clean up following CAMLprim removal (authored by jberdine).
[NFC][OCaml] Reformat to clean up following CAMLprim removal
Apr 5 2021, 2:59 AM
jberdine committed rGd9bbd9864578: [OCaml] Omit unnecessary GC root registrations (authored by jberdine).
[OCaml] Omit unnecessary GC root registrations
Apr 5 2021, 2:59 AM
jberdine committed rG2c82ea1849dc: [OCaml] Code simplification using string allocation functions (authored by jberdine).
[OCaml] Code simplification using string allocation functions
Apr 5 2021, 2:59 AM
jberdine committed rGe5b7fedc573c: [OCaml] Code simplification using option allocation functions (authored by jberdine).
[OCaml] Code simplification using option allocation functions
Apr 5 2021, 2:59 AM
jberdine closed D99477: [NFC][OCaml] Reformat to clean up following CAMLprim removal.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine committed rG58bb9222dd29: [OCaml] Minor optimizations by avoiding double initialization (authored by jberdine).
[OCaml] Minor optimizations by avoiding double initialization
Apr 5 2021, 2:59 AM
jberdine closed D99476: [NFC][OCaml] Remove vestigial CAMLprim declarations.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine committed rG5c25ff8739e0: [OCaml] Fix unsafe uses of Store_field (authored by jberdine).
[OCaml] Fix unsafe uses of Store_field
Apr 5 2021, 2:59 AM
jberdine closed D99475: [OCaml] Omit unnecessary GC root registrations.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine closed D99474: [OCaml] Code simplification using string allocation functions.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine closed D99473: [OCaml] Code simplification using option allocation functions.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine closed D99472: [OCaml] Minor optimizations by avoiding double initialization.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine closed D99471: [OCaml] Fix unsafe uses of Store_field.
Apr 5 2021, 2:59 AM · Restricted Project
jberdine added a comment to D99475: [OCaml] Omit unnecessary GC root registrations.

Thank you very much @vaivaswatha, that is very helpful!

Apr 5 2021, 2:27 AM · Restricted Project

Apr 1 2021

jberdine added a comment to D99475: [OCaml] Omit unnecessary GC root registrations.

See https://github.com/jberdine/llvm-project/tree/ocaml for this stack on github.

Apr 1 2021, 7:12 AM · Restricted Project

Mar 31 2021

jberdine added a comment to D99475: [OCaml] Omit unnecessary GC root registrations.

I have been testing this stack of diffs with a sort of stress test that involves running a system that consumes bitcode and uses the ocaml api to traverse and translate it. The testing has used a range of OCaml GC settings in order to make the GC work much harder and trigger much more often than usual (e.g. Gc.set {(Gc.get ()) with minor_heap_size= 1024; space_overhead= 20}). The reasoning here is that if the bindings are not playing nice with the GC, then there is a higher chance to uncover such issues if the GC runs much more often. This testing has not revealed any issues.

Mar 31 2021, 4:25 AM · Restricted Project

Mar 28 2021

jberdine added a comment to D99475: [OCaml] Omit unnecessary GC root registrations.

I intend to do some additional testing of this, but put this diff up in the meantime for feedback and perhaps also some wider testing.

Mar 28 2021, 3:39 PM · Restricted Project
jberdine requested review of D99477: [NFC][OCaml] Reformat to clean up following CAMLprim removal.
Mar 28 2021, 3:35 PM · Restricted Project
jberdine requested review of D99476: [NFC][OCaml] Remove vestigial CAMLprim declarations.
Mar 28 2021, 3:34 PM · Restricted Project
jberdine requested review of D99475: [OCaml] Omit unnecessary GC root registrations.
Mar 28 2021, 3:33 PM · Restricted Project
jberdine requested review of D99474: [OCaml] Code simplification using string allocation functions.
Mar 28 2021, 3:32 PM · Restricted Project
jberdine requested review of D99473: [OCaml] Code simplification using option allocation functions.
Mar 28 2021, 3:31 PM · Restricted Project
jberdine requested review of D99472: [OCaml] Minor optimizations by avoiding double initialization.
Mar 28 2021, 3:30 PM · Restricted Project
jberdine requested review of D99471: [OCaml] Fix unsafe uses of Store_field.
Mar 28 2021, 3:28 PM · Restricted Project

Mar 27 2021

jberdine accepted D99450: [OCaml][Test] Fix and enable debuginfo.ml test..

LGTM

Mar 27 2021, 3:18 AM · Restricted Project

Mar 26 2021

jberdine committed rGd50fe9f0d6b9: [NFC][OCaml] Resolve a couple more compilation warnings (authored by jberdine).
[NFC][OCaml] Resolve a couple more compilation warnings
Mar 26 2021, 1:58 PM
jberdine closed D99420: [NFC][OCaml] Resolve a couple more compilation warnings.
Mar 26 2021, 1:58 PM · Restricted Project
jberdine added a comment to D99403: [OCaml][DebugInfo] Add tests for the recently added debug info API.

I looked over the new commit and it is good. Personally I prefer the new style anyhow. :-)

Mar 26 2021, 1:55 PM · Restricted Project
jberdine added a reviewer for D99420: [NFC][OCaml] Resolve a couple more compilation warnings: vaivaswatha.
Mar 26 2021, 9:28 AM · Restricted Project
jberdine requested review of D99420: [NFC][OCaml] Resolve a couple more compilation warnings.
Mar 26 2021, 9:27 AM · Restricted Project
jberdine accepted D99403: [OCaml][DebugInfo] Add tests for the recently added debug info API.

LGTM, thanks!

Mar 26 2021, 9:26 AM · Restricted Project
jberdine committed rG6f77926f464b: [OCaml] Fix a possible crash in llvm_struct_name (authored by jberdine).
[OCaml] Fix a possible crash in llvm_struct_name
Mar 26 2021, 5:02 AM
jberdine committed rG0b1dc49ca38a: [NFC][OCaml] Resolve const and unsigned compilation warnings (authored by jberdine).
[NFC][OCaml] Resolve const and unsigned compilation warnings
Mar 26 2021, 5:02 AM
jberdine committed rGb06c669114e2: [NFC][OCaml] Simplify llvm_global_initializer using ptr_to_option (authored by jberdine).
[NFC][OCaml] Simplify llvm_global_initializer using ptr_to_option
Mar 26 2021, 5:02 AM
jberdine closed D99393: [OCaml] Fix a possible crash in llvm_struct_name.
Mar 26 2021, 5:02 AM · Restricted Project
jberdine closed D99392: [NFC][OCaml] Resolve const and unsigned compilation warnings.
Mar 26 2021, 5:01 AM · Restricted Project
jberdine closed D99391: [NFC][OCaml] Simplify llvm_global_initializer using ptr_to_option.
Mar 26 2021, 5:01 AM · Restricted Project
jberdine added inline comments to D99393: [OCaml] Fix a possible crash in llvm_struct_name.
Mar 26 2021, 3:02 AM · Restricted Project
jberdine updated the diff for D99393: [OCaml] Fix a possible crash in llvm_struct_name.

fix bug spotted in CR, formatting

Mar 26 2021, 3:02 AM · Restricted Project

Mar 25 2021

jberdine requested review of D99393: [OCaml] Fix a possible crash in llvm_struct_name.
Mar 25 2021, 5:04 PM · Restricted Project
jberdine requested review of D99392: [NFC][OCaml] Resolve const and unsigned compilation warnings.
Mar 25 2021, 5:04 PM · Restricted Project
jberdine requested review of D99391: [NFC][OCaml] Simplify llvm_global_initializer using ptr_to_option.
Mar 25 2021, 5:03 PM · Restricted Project

Mar 19 2021

jberdine added inline comments to D65195: [OCaml] Handle nullptr in Llvm.global_initializer.
Mar 19 2021, 8:19 AM · Restricted Project
jberdine added inline comments to D98851: [OCaml] Add (get/set)_module_identifer functions.
Mar 19 2021, 6:58 AM · Restricted Project
jberdine added inline comments to D98851: [OCaml] Add (get/set)_module_identifer functions.
Mar 19 2021, 6:50 AM · Restricted Project
jberdine added inline comments to D98851: [OCaml] Add (get/set)_module_identifer functions.
Mar 19 2021, 5:04 AM · Restricted Project

Mar 18 2021

jberdine added inline comments to D98851: [OCaml] Add (get/set)_module_identifer functions.
Mar 18 2021, 2:56 PM · Restricted Project
jberdine accepted D98851: [OCaml] Add (get/set)_module_identifer functions.

LGTM

Mar 18 2021, 6:23 AM · Restricted Project

Mar 17 2021

jberdine committed rG2571a0936719: [OCaml] Handle nullptr in Llvm.global_initializer (authored by kren1).
[OCaml] Handle nullptr in Llvm.global_initializer
Mar 17 2021, 6:41 AM
jberdine closed D65195: [OCaml] Handle nullptr in Llvm.global_initializer.
Mar 17 2021, 6:41 AM · Restricted Project
jberdine committed rGcca3167de0b6: [NFC][OCaml] Fix documentation for verify_function and const_of_int64 (authored by HuStmpHrrr).
[NFC][OCaml] Fix documentation for verify_function and const_of_int64
Mar 17 2021, 5:10 AM
jberdine closed D77884: fix the documentation for ocaml bindings.
Mar 17 2021, 5:10 AM · Restricted Project
jberdine added a comment to D90831: DebugInfo support for OCaml bindings.

I see, it seems some of the builds are still using a version of OCaml older than 4.06 (from 11-2017). The difference between using caml_alloc_initialized_string and the code with memcpy is about const char * versus char *. If OCaml is configured with immutable strings (the default starting with 4.10), then String_val returns a const char *. I guess that supporting such old versions will necessitate compilation warnings about const.

Mar 17 2021, 4:18 AM · Restricted Project

Mar 16 2021

jberdine added a comment to D90831: DebugInfo support for OCaml bindings.

Ah, I see, the failure is just tidy, go for it then. I don't know if it can be configured, but clang-tidy cannot be obeyed on this code without breaking the build.

Mar 16 2021, 12:24 PM · Restricted Project
jberdine accepted D90831: DebugInfo support for OCaml bindings.

Thanks @vaivaswatha for dealing with all my nitpicking! Yes, I've made a final pass over this and it looks good. I'd recheck the build before committing given the CI build failure.

Mar 16 2021, 12:01 PM · Restricted Project
jberdine committed rGece6d8e72eaa: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps (authored by jberdine).
[OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps
Mar 16 2021, 8:43 AM
jberdine closed D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.
Mar 16 2021, 8:42 AM · Restricted Project
jberdine added a comment to D90831: DebugInfo support for OCaml bindings.

Looks good, thanks! I made a few very minor comments. I agree that the current state of clang-tidy is good. I don't know how to let it know about the OCaml-specific headers, and that e.g. value is a type declared there and it's capitalization is not up for discussion.

Mar 16 2021, 6:08 AM · Restricted Project
jberdine updated the diff for D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.

appease clang-format

Mar 16 2021, 5:41 AM · Restricted Project

Mar 15 2021

jberdine committed rG5bb2757e218d: [OCaml][test] Fix Bindings/OCaml/executionengine.ml test (authored by jberdine).
[OCaml][test] Fix Bindings/OCaml/executionengine.ml test
Mar 15 2021, 7:50 PM
jberdine closed D98593: [OCaml][test] Fix Bindings/OCaml/executionengine.ml test.
Mar 15 2021, 7:50 PM · Restricted Project
jberdine added a comment to D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.

ninja check-llvm-bindings-ocaml passes (when rebased on top of D98593)

Mar 15 2021, 2:51 PM · Restricted Project
jberdine updated the diff for D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.

add X86_amx type and rebase

Mar 15 2021, 2:50 PM · Restricted Project
jberdine added a comment to D98593: [OCaml][test] Fix Bindings/OCaml/executionengine.ml test.

Now all tests run by ninja check-llvm-bindings-ocaml pass.

Mar 15 2021, 2:44 PM · Restricted Project
jberdine updated the diff for D98593: [OCaml][test] Fix Bindings/OCaml/executionengine.ml test.

rebase and trim unnecessary detail from commit summary

Mar 15 2021, 2:42 PM · Restricted Project
jberdine added inline comments to D90831: DebugInfo support for OCaml bindings.
Mar 15 2021, 1:54 PM · Restricted Project
jberdine abandoned D60902: [OCaml] Add OCaml APIs to access DebugInfo.

This is superceded by https://reviews.llvm.org/D90831

Mar 15 2021, 7:31 AM · Restricted Project
jberdine accepted D90831: DebugInfo support for OCaml bindings.

Thanks @vaivaswatha for making all these changes, and so promptly!

Mar 15 2021, 6:20 AM · Restricted Project

Mar 14 2021

jberdine added a comment to D90831: DebugInfo support for OCaml bindings.

I have not had time to complete a full round of review, but made some comments on the latest version.

Mar 14 2021, 3:30 PM · Restricted Project

Mar 13 2021

jberdine requested review of D98593: [OCaml][test] Fix Bindings/OCaml/executionengine.ml test.
Mar 13 2021, 4:29 PM · Restricted Project
jberdine added inline comments to D90831: DebugInfo support for OCaml bindings.
Mar 13 2021, 3:08 PM · Restricted Project
jberdine added a comment to D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.

For reference, ninja check-all with this diff on my system passes all but 2 seemingly unrelated tests. (I don't know why it is complaining about macos SDK versions and -lSystem).

----------------------------------------------------------------------
Ran 126 tests in 3.332s
Mar 13 2021, 4:50 AM · Restricted Project
jberdine added a reviewer for D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps: vaivaswatha.
Mar 13 2021, 4:45 AM · Restricted Project
jberdine requested review of D98578: [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps.
Mar 13 2021, 4:41 AM · Restricted Project

Mar 12 2021

jberdine requested changes to D90831: DebugInfo support for OCaml bindings.

I have checked over this code, and tested it by adapting a system I work on to use this diff plus a few changes to do all the reading of debuginfo from bitcode. The changes I used in the experiment are available on the branch whose tip is here. With this I have successfully read the debuginfo of every global/function/instruction in every file under llvm/test, as well as several internal codebases. I have not done similar testing of the debuginfo creation side of the added APIs.

Mar 12 2021, 3:51 PM · Restricted Project

Oct 11 2019

jberdine added a comment to D60902: [OCaml] Add OCaml APIs to access DebugInfo.

I will experiment with putting the opam file below the repo root. Another potential stumbling point is that the opam package includes some patches for the build/install, see https://github.com/ocaml/opam-repository/tree/master/packages/llvm/llvm.9.0.0/files . Would it be too strange to include such patches here?

Oct 11 2019, 7:10 AM · Restricted Project
jberdine added a comment to D60902: [OCaml] Add OCaml APIs to access DebugInfo.

@whitequark, with this diff's approach of creating a hierarchy of types to mirror the LLVM-C DI types, is it acceptable to add the types and functions incrementally? That is, could we land this diff and add other types and functions later?

Oct 11 2019, 6:49 AM · Restricted Project
jberdine abandoned D52239: [OCaml] Add OCaml APIs to access DebugLoc info.

Thanks @whitequark , that is very helpful. I'll close this diff in favor of D60902 and continue discussion there.

Oct 11 2019, 6:49 AM · Restricted Project