[LLVMdev] Discussion of eliminating the void type

Lyu Mitnick
Mon, 07 May 2012 15:07:40 -0000

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>