<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 20, 2013 at 11:29 AM, upit <span dir="ltr"><<a href="mailto:uday_pitambare@yahoo.com" target="_blank">uday_pitambare@yahoo.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">OK. That helps.<br>
It does flash a warning though<br>
<br>
[DEVICE-C++] nbody.kernel.cpp<br>
nbody.kernel.cpp:29:9: warning: '__constant__' macro redefined<br>
#define __constant__ __attribute__((address_space(2)))<br>
        ^<br>
/opt/cuda/include/host_defines.h:183:9: note: previous definition is here<br>
#define __constant__ \<br>
        ^<br>
1 warning generated.<br>
<br>
Another question is<br>
What about extern __shared__ ?<br>
<br>
I can see that the error goes away if I replace "extern __shared__ float4<br>
sharedPos[]" with "__shared__ float4* sharedPos;". Do I have to dynamically<br>
allocate the shared memory  by specifying size in kernel Launch? If so, why<br>
doesn't the second use of the same statement in another function cause the<br>
error ?<br>
<br>
I am using 3.2.<br></blockquote><div><br></div><div>I would just do away with the toolkit headers.  I may try to put together some minimalistic headers for clang w/ nvptx at some point.  Your best bet is to just define what you need yourself for now.<br>
<br></div><div>__shared__ would be address space 3, so:<br><br></div><div>#define __shared__ __attribute__((address_space(3)))<br><br></div><div>Either using [] or * should work.  Just be aware that you will need to specify a shared size when you launch the kernel.  You can get the address space mapping from lib/Target/NVPTX/MCTargetDesc/NVPTXBaseInfo.h.<br>
</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://llvm.1065342.n5.nabble.com/UNREACHABLE-executed-error-while-trying-to-generate-PTX-tp56026p56080.html" target="_blank">http://llvm.1065342.n5.nabble.com/UNREACHABLE-executed-error-while-trying-to-generate-PTX-tp56026p56080.html</a><br>

<div class=""><div class="h5">Sent from the LLVM - Dev mailing list archive at Nabble.com.<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><br><div>Thanks,</div><div><br></div><div>Justin Holewinski</div>
</div></div>