[LLVMdev] Discussion of eliminating the void type

Lyu Mitnick mitnick.lyu at gmail.com
Mon May 7 08:07:40 PDT 2012


Hello all,

I am willing to do "eliminating the void type" project. Is there anyone
working on it?

=== Overview ===

The general concept is to replaced void with {}. And 'ret void' is a
synonym of 'ret {} {}.'

=== Further Implementation Details ===

1. Deleting VoidTyID

2. Deleting LLVMVoidTypeKind (one-to-one relation between VoidTyID and
LLVMVoidTypeKind)

3. Use StructTy* VoidTy instead of Type VoidTy
    VoidTy may be Identified struct. In addition to error occurs at
test/Analysis/BasicAA/empty.ll
    because of using literal struct "{}" as VoidTy

4. Re-implement isVoidTy().
    Test whether the address of the type equals Type::getVoidTy()

=== Request For Command ===

The constructor form of ReturnInst

Any suggestion is welcomed.

Thanks a lot

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


More information about the llvm-dev mailing list