[llvm-dev] Various Intermediate Representations. IR

Johannes Doerfert via llvm-dev llvm-dev at lists.llvm.org
Tue Apr 14 13:24:36 PDT 2020

People are actually working on 2) (for a while now). Progress was made
but I'm unsure where we are. If you search for "llvm opaque pointers"
you find the original LLVM-Dev talk, mailing list discussions, and
various patch reviews. I guess one way of achieving what you need is to
accelerate the transition in LLVM-IR ;)


On 4/14/20 3:05 PM, James Courtier-Dutton via llvm-dev wrote:
 > Hi,
 > I am looking for an IR that is similar to LLVM IR, with its SSA form,
 > module->function->block->instruction etc.
 > But, I wish a much reduced type model.
 > I wish only three types:
 > 1) An Integer of various bit-widths.
 > 2) A pointer, but a pointer that does not need to point to a known
 > type. A sort of "pointer to unknown type".
 > 3) Floats of various varieties.
 > For example, if we were using a pointer to step through an array of
 > 32bit integers.
 > We would use: pointer = pointer + 4;   (I.e. step over 4 octets at a 
 > Is anyone aware of such an IR, or is there some way for trick LLVM IR
 > into only using the above 2 types?
 > IR already does (1) and (3). It does not seem to be able to do (2).
 > Kind Regards
 > James
 > _______________________________________________
 > LLVM Developers mailing list
 > llvm-dev at lists.llvm.org
 > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

More information about the llvm-dev mailing list