Harmen van der Spek
2009-Nov-13 21:02 UTC
[LLVMdev] Poolalloc asserts when passing in pool descriptors
Hi, The poolalloc library fails in TransformFunctionBody.cpp, line 746 --- Value *ArgVal = ConstantAggregateZero::get(PoolAllocate::PoolDescPtrTy); --- opt -load /path_to_lib/libpoolalloc.dylib -poolalloc constaggr.bc -o opt.bc -f triggers the problem (bc file attached). Assertion failed: ((isa<StructType>(Ty) || isa<ArrayType>(Ty) || isa<VectorType>(Ty)) && "Cannot create an aggregate zero of non-aggregate type!"), function get, file lib/VMCore/Constants.cpp, line 859. Changing it to Value *ArgVal = Constant::getNullValue(PoolAllocate::PoolDescPtrTy); which was used in revision 72001, fixes the problem. Harmen -------------- next part -------------- A non-text attachment was scrubbed... Name: constaggr.bc Type: application/octet-stream Size: 704 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091113/65b3e730/attachment.obj>
John Criswell
2009-Nov-13 21:12 UTC
[LLVMdev] Poolalloc asserts when passing in pool descriptors
Dear Harmen, You're correct. I've applied the fix. Thanks! -- John T. Harmen van der Spek wrote:> Hi, > > The poolalloc library fails in TransformFunctionBody.cpp, line 746 > > --- > Value *ArgVal = ConstantAggregateZero::get(PoolAllocate::PoolDescPtrTy); > --- > > opt -load /path_to_lib/libpoolalloc.dylib -poolalloc constaggr.bc -o > opt.bc -f > > triggers the problem (bc file attached). > > Assertion failed: ((isa<StructType>(Ty) || isa<ArrayType>(Ty) || > isa<VectorType>(Ty)) && "Cannot create an aggregate zero of > non-aggregate type!"), function get, file lib/VMCore/Constants.cpp, line > 859. > > Changing it to > Value *ArgVal = Constant::getNullValue(PoolAllocate::PoolDescPtrTy); > > which was used in revision 72001, fixes the problem. > > > Harmen >
Reasonably Related Threads
- [LLVMdev] Getting the DSNode from a Pool Descriptor?
- [LLVMdev] Getting the DSNode from a Pool Descriptor?
- [LLVMdev] Getting the DSNode from a Pool Descriptor?
- [LLVMdev] Getting the DSNode from a Pool Descriptor?
- [LLVMdev] Getting the DSNode from a Pool Descriptor?