[PATCH] D90831: DebugInfo support for OCaml bindings

Vaivaswatha Nagaraj via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 15 03:12:31 PDT 2021


vaivaswatha added a comment.

The types that we'll need to model include, at least the following:

`DIType` and its 5 subclasses
`DILocalScope` and its 4 (transitive) subclasses
`DIVariable` and its two subclasses
So if I understand correctly we'll have 5 + 5 + 2 upcasts and the same number of downcast functions b/w each of these 14 types (aliases).

All three of the above derive from `DIScope`, so that means more upcast and downcast utility functions.

I think we should defer this work to a separate patch / review where the focus is just on strongly typing the interface (or recapturing the C++ type hierarchy - whichever way you see it). Such a patch could fix the identical problem that's there in the core IR too, where the entire `llvm::Value` hierarchy is represented as `llvalue` in the OCaml interface (save for the exception made for `llbasicblock`).


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

https://reviews.llvm.org/D90831



More information about the llvm-commits mailing list