comparison gen/toir.cpp @ 177:cea8dcfa76df trunk

[svn r193] Fixed: abstract classes implementing interfaces now output proper Interface info arrays. (null vtables). Did a little renaming of delegate utils.
author lindquist
date Wed, 07 May 2008 04:45:51 +0200
parents a074a5ff709c
children 8873b7f1457e
comparison
equal deleted inserted replaced
176:a074a5ff709c 177:cea8dcfa76df
1839 eval = DtoArrayEquals(op,l,r); 1839 eval = DtoArrayEquals(op,l,r);
1840 } 1840 }
1841 else if (t->ty == Tdelegate) 1841 else if (t->ty == Tdelegate)
1842 { 1842 {
1843 Logger::println("delegate"); 1843 Logger::println("delegate");
1844 eval = DtoCompareDelegate(op,l->getRVal(),r->getRVal()); 1844 eval = DtoDelegateCompare(op,l->getRVal(),r->getRVal());
1845 } 1845 }
1846 else 1846 else
1847 { 1847 {
1848 assert(0 && "Unsupported EqualExp type"); 1848 assert(0 && "Unsupported EqualExp type");
1849 } 1849 }
2331 r = NULL; 2331 r = NULL;
2332 } 2332 }
2333 else { 2333 else {
2334 assert(l->getType() == r->getType()); 2334 assert(l->getType() == r->getType());
2335 } 2335 }
2336 eval = DtoDynArrayIs(op,l,r); 2336 eval = DtoDelegateCompare(op,l,r);
2337 } 2337 }
2338 else if (t1->isfloating()) 2338 else if (t1->isfloating())
2339 { 2339 {
2340 llvm::FCmpInst::Predicate pred = (op == TOKidentity) ? llvm::FCmpInst::FCMP_OEQ : llvm::FCmpInst::FCMP_ONE; 2340 llvm::FCmpInst::Predicate pred = (op == TOKidentity) ? llvm::FCmpInst::FCMP_OEQ : llvm::FCmpInst::FCMP_ONE;
2341 eval = new llvm::FCmpInst(pred, l, r, "tmp", p->scopebb()); 2341 eval = new llvm::FCmpInst(pred, l, r, "tmp", p->scopebb());