[LLVMdev] Reference Manual Clarifications 2

Chris Lattner sabre at nondot.org
Sat Apr 19 15:40:14 PDT 2008

On Apr 19, 2008, at 3:27 PM, Jon Sargeant wrote:
>>> Regarding malloc and alloca, I realized that the size is unsigned,
>>> so a
>>> negative value for NumElements is impossible.  I suggest replacing  
>>> "it
>>> is the number of elements allocated" with "it is the UNSIGNED number
>>> of
>>> elements allocated".
>> I'm not sure why this is more clear.
> The semantics of malloc and alloca depend on whether you interpret
> NumElements as a signed or unsigned 32-bit integer.  For example, if
> NumElements is 0xffffFFFF, should the instruction fail (because
> allocating a negative number of elements doesn't make sense), or  
> should
> the instruction allocate 2^32-1 elements?  I don't see any mention of
> whether NumElements is signed or unsigned in the documentation.

How could an element count be treated as negative?  It doesn't make  
sense to allocate negative elements.


More information about the llvm-dev mailing list