[llvm-dev] Subclassing LLVM Type

Tim Northover via llvm-dev llvm-dev at lists.llvm.org
Fri Jun 9 13:12:16 PDT 2017


On 9 June 2017 at 12:03, Jajoo, Malhar via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> Is there some way around this ( without suggesting a change to my entire AST ) ?

LLVM has its own lightweight dynamic casting infrastructure which the
Type hierarchy already makes use of.

You have to implement a "classof" function in your DummyType
definition. That means you'll need a new type ID. Appropriating an
unused one is slightly dodgy, but probably OK in practice if you're
careful.

After that you'd write "dyn_cast" instead of "dynamic_cast", since
that's what the LLVM version is called.

Cheers.

Tim.


More information about the llvm-dev mailing list