[llvm-dev] RFC: alloca -- specify address space for allocation

Matt Arsenault via llvm-dev
Thu, 27 Aug 2015 03:24:54 -0000

On 08/26/2015 07:02 PM, Chandler Carruth via llvm-dev
wrote:
>
> Without a better understanding of both the motivation and the
> resulting consequences such as what I've outlined in my questions
> above, it is very hard for me to feel comfortable with this kind of
> change.
>
For my use case, some of the assumptions about addrspace(0) don't make
any sense, so having the option of not using it for stack allocations
would avoid some special case problems. For example, it's assumed that 0
is the address space of code, and stack, but for us these are unrelated
concepts and have different pointer sizes. The assumption that 0 is not
a valid pointer value is also incorrect, since we want stack pointers to
be a 32-bit offset and 0 is valid. For this use case, all allocas should
be created with the same address space, so it could be part of the
datalayout. In the backend, we have 3 different memory types we would
like to place stack objects, so being able to mark these with different
address space IDs would also be helpful (although we wouldn't care about
the middle end deciding that some allocas should be in a different
address space from a single one specified by the data layout)
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20150826/2189a9ac/attachment.html>