[LLVMdev] Eliminating the 'void' type

Chris Lattner clattner at apple.com
Mon Apr 23 10:20:17 PDT 2012


On Apr 23, 2012, at 5:57 AM, Lyu Mitnick wrote:

> Hello Chris
> 
>> The general concept is to replace void with {}.  Void is a weird type in that it is only allowed as the return value of functions and as the type of instructions like store.  It seems better (though also not particularly high priority) to eliminate it to make the type system more consistent.
> 
> MVT::isVoid 

MVT is separate from the LLVM IR type system, I would not change it.

> and Type::VoidTyID

VoidTyID should go away, since there is no more distinct Void type anymore.

> (getVoidTy) have equivalent relation in LLVM.

For API continuity, Type::getVoidTy() should still exist, but it should return {}.

-Chris

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120423/d20eec31/attachment.html>


More information about the llvm-dev mailing list