comparison gen/classes.cpp @ 825:a70ddd449e7d

Commented some logging that could be '''very''' long, cuts -vv output size of a gtkd gl sample down 1.2GB by 3/4. Fixed wrong pointer type for multidimension "deep" slicing.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Thu, 04 Dec 2008 16:11:09 +0100
parents 8f0b24bc55f0
children 482cd74d1c71
comparison
equal deleted inserted replaced
824:b972fec8a5f5 825:a70ddd449e7d
253 253
254 // void*[vtbl.dim] 254 // void*[vtbl.dim]
255 llvm::cast<llvm::OpaqueType>(irstruct->vtblTy.get())->refineAbstractTypeTo(LLArrayType::get(getVoidPtrType(), cd->vtbl.dim)); 255 llvm::cast<llvm::OpaqueType>(irstruct->vtblTy.get())->refineAbstractTypeTo(LLArrayType::get(getVoidPtrType(), cd->vtbl.dim));
256 256
257 // log 257 // log
258 if (Logger::enabled()) 258 // if (Logger::enabled())
259 Logger::cout() << "final class type: " << *ts->ir.type->get() << '\n'; 259 // Logger::cout() << "final class type: " << *ts->ir.type->get() << '\n';
260 260
261 // pop state 261 // pop state
262 gIR->structs.pop_back(); 262 gIR->structs.pop_back();
263 263
264 // queue declare 264 // queue declare
580 irstruct->constVtbl = LLConstantStruct::get(sinits); 580 irstruct->constVtbl = LLConstantStruct::get(sinits);
581 581
582 // refine type 582 // refine type
583 llvm::cast<llvm::OpaqueType>(irstruct->vtblInitTy.get())->refineAbstractTypeTo(irstruct->constVtbl->getType()); 583 llvm::cast<llvm::OpaqueType>(irstruct->vtblInitTy.get())->refineAbstractTypeTo(irstruct->constVtbl->getType());
584 584
585 if (Logger::enabled()) 585 // if (Logger::enabled())
586 Logger::cout() << "vtbl initializer: " << *irstruct->constVtbl << std::endl; 586 // Logger::cout() << "vtbl initializer: " << *irstruct->constVtbl << std::endl;
587 } 587 }
588 588
589 ////////////////////////////////////////////////////////////////////////////// 589 //////////////////////////////////////////////////////////////////////////////
590 590
591 static void init_class_interface_vtbl_initializers(ClassDeclaration* cd) 591 static void init_class_interface_vtbl_initializers(ClassDeclaration* cd)
758 irstruct->constInit = LLConstantStruct::get(inits); // classes are never packed 758 irstruct->constInit = LLConstantStruct::get(inits); // classes are never packed
759 759
760 // refine __initZ global type to the one of the initializer 760 // refine __initZ global type to the one of the initializer
761 llvm::cast<llvm::OpaqueType>(irstruct->initOpaque.get())->refineAbstractTypeTo(irstruct->constInit->getType()); 761 llvm::cast<llvm::OpaqueType>(irstruct->initOpaque.get())->refineAbstractTypeTo(irstruct->constInit->getType());
762 762
763 if (Logger::enabled()) 763 // if (Logger::enabled())
764 { 764 // {
765 Logger::cout() << "class " << cd->toChars() << std::endl; 765 // Logger::cout() << "class " << cd->toChars() << std::endl;
766 Logger::cout() << "type " << *cd->type->ir.type->get() << std::endl; 766 // Logger::cout() << "type " << *cd->type->ir.type->get() << std::endl;
767 Logger::cout() << "initializer " << *irstruct->constInit << std::endl; 767 // Logger::cout() << "initializer " << *irstruct->constInit << std::endl;
768 } 768 // }
769 769
770 gIR->structs.pop_back(); 770 gIR->structs.pop_back();
771 } 771 }
772 772
773 ////////////////////////////////////////////////////////////////////////////////////////// 773 //////////////////////////////////////////////////////////////////////////////////////////