[LLVMdev] Moving towards a singular pointer type

Dirkjan Ochtman dirkjan at ochtman.nl
Mon Feb 9 05:16:29 PST 2015


Hi there,

Sorry, I don't have the thread history to reply to since I normally
read llvmdev through the archives, but wanted to give my .02 of
feedback anyway.

As far as I understand, this change is wanted because the LLVM
infrastructure derives no value from knowing the types, and there's a
cost in terms of code spent to support all of it. I've been creating a
frontend that mostly writes out plain-text IR.

Is the type-checking of pointer types still done when constructing IR
through builder APIs? Otherwise this makes debugging significantly
harder for me. I've also really liked how readable LLVM IR is, and it
would seem like this change would negatively affect the readability.

I have no qualms with not propagating any of the pointer type data to
lower-level LLVM APIs and from the discussion, it seems like I'll
still be allowed to have the types in there for backwards
compatibility, but I wonder if it wouldn't be worthwhile to also keep
some of the type-checking in the verification code, and only ditch all
the type information (or, just not consider it) after that part.

Cheers,

Dirkjan



More information about the llvm-dev mailing list