comparison gen/llvmhelpers.cpp @ 670:4f004553de33

Fixed dynamic array -> boolean. does (arr.ptr !is null) now instead of (arr.length != 0)
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Wed, 08 Oct 2008 22:38:52 +0200
parents c42173b3557b
children b411c41a9716
comparison
equal deleted inserted replaced
669:92ec7487a1a0 670:4f004553de33
1560 return gIR->ir->CreateICmpNE(val, zero, "tmp"); 1560 return gIR->ir->CreateICmpNE(val, zero, "tmp");
1561 } 1561 }
1562 // dynamic array 1562 // dynamic array
1563 else if (ty == Tarray) 1563 else if (ty == Tarray)
1564 { 1564 {
1565 // return (arr.length != 0) 1565 // return (arr.ptr !is null)
1566 return gIR->ir->CreateICmpNE(DtoArrayLen(dval), DtoConstSize_t(0), "tmp"); 1566 LLValue* ptr = DtoArrayPtr(dval);
1567 LLConstant* nul = getNullPtr(ptr->getType());
1568 return gIR->ir->CreateICmpNE(ptr, nul, "tmp");
1567 } 1569 }
1568 // delegate 1570 // delegate
1569 else if (ty == Tdelegate) 1571 else if (ty == Tdelegate)
1570 { 1572 {
1571 // return (dg !is null) 1573 // return (dg !is null)