<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 5, 2014 at 1:40 PM, jotas <span dir="ltr"><<a href="mailto:julian.maciejewski@gmail.com" target="_blank">julian.maciejewski@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Actually I have same  problem as this guy:<br>
<a href="http://lists.cs.uiuc.edu/pipermail/cfe-dev/2011-June/015596.html" target="_blank">http://lists.cs.uiuc.edu/pipermail/cfe-dev/2011-June/015596.html</a><br>
<br>
I set search patches and now my program sees __global__ etc. but not<br>
blockDim.x or threadIdx.x.<br></blockquote><div><br></div><div>Yeah, these don't work in Clang yet. Patches welcome!</div><div><br></div><div>I have some very initial patches to implement this, but very far from something I could actually send upstream. It may take time until I get to that.</div>

<div><br></div><div>Eli</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I set flag -D__CUDACC__ in makefile but it doesnt work. setting:<br>
TheCompInst.getPreprocessorOpts().addMacroDef("__CUDACC__"); gives even<br>
more errors like:<br>
<br>
/usr/local/cuda-5.5/include/cuda_runtime_api.h:1029:17: warning: unknown<br>
attribute 'cudart_builtin' ignored<br>
extern __host__ __cudart_builtin__ cudaError_t CUDARTAPI<br>
cudaGetLastError(void);<br>
                ^<br>
/usr/local/cuda-5.5/include/host_defines.h:199:22: note: expanded from<br>
macro '__cudart_builtin__'<br>
        __location__(cudart_builtin)<br>
                     ^<br>
/usr/local/cuda-5.5/include/host_defines.h:83:22: note: expanded from macro<br>
'__location__'<br>
        __annotate__(a)<br>
<br></blockquote><div><br></div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
2014-03-05 22:26 GMT+01:00 Eli Bendersky-2 [via Clang Developers] <<br>
<a href="mailto:ml-node%2Bs42468n4038299h32@n3.nabble.com">ml-node+s42468n4038299h32@n3.nabble.com</a>>:<br>
<br>
><br>
><br>
><br>
> On Wed, Mar 5, 2014 at 4:12 AM, jotas <[hidden email]<<a href="http://user/SendEmail.jtp?type=node&node=4038299&i=0" target="_blank">http://user/SendEmail.jtp?type=node&node=4038299&i=0</a>><br>


<div><div class="h5">> > wrote:<br>
><br>
>> Hi,<br>
>> I ma building rewriter based on clang (based on some tutorial available on<br>
>> the internet).<br>
>> I am loading CUDA file and trying to traverse AST. I got a problem. It<br>
>> doesn't recognize CUDA directives like __global__ etc.<br>
>> I set:<br>
>> TheCompInst.getLangOpts().CUDA = 1;<br>
>> and source search patch to:<br>
>> /usr/include/linux<br>
>><br>
>> Sould I do someting more?<br>
>><br>
>> I get an error:<br>
>><br>
>> :~/Documents/rewriter$ ./rewritersample bigfunc2.c<br>
>> bigfunc2.c:17:1: error: unknown type name '__global__'<br>
>> __global__ void foo22(int *a, int *b, int *c) {<br>
>> ^<br>
>> bigfunc2.c:17:12: error: expected identifier or '('<br>
>> __global__ void foo22(int *a, int *b, int *c) {<br>
>>            ^<br>
>> #include <cuda.h><br>
>><br>
>> #define N_WAVE          1024<br>
>> #define LOG2_N_WAVE     10<br>
>><br>
><br>
> These are usually defined as preprocessor macros in the CUDA headers,<br>
> something like:<br>
><br>
> #define __device__ __attribute__((device))<br>
><br>
> You can take a peek at the public CUDA headers for more information.<br>
><br>
> Eli<br>
><br>
><br>
><br>
><br>
</div></div>> _______________________________________________<br>
> cfe-dev mailing list<br>
> [hidden email] <<a href="http://user/SendEmail.jtp?type=node&node=4038299&i=1" target="_blank">http://user/SendEmail.jtp?type=node&node=4038299&i=1</a>><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
><br>
><br>
> ------------------------------<br>
>  If you reply to this email, your message will be added to the discussion<br>
> below:<br>
><br>
> <a href="http://clang-developers.42468.n3.nabble.com/Parsing-CUDA-file-to-AST-tp4038287p4038299.html" target="_blank">http://clang-developers.42468.n3.nabble.com/Parsing-CUDA-file-to-AST-tp4038287p4038299.html</a><br>


>  To unsubscribe from Parsing CUDA file to AST, click here<<a href="http://clang-developers.42468.n3.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=4038287&code=anVsaWFuLm1hY2llamV3c2tpQGdtYWlsLmNvbXw0MDM4Mjg3fC00NjM1OTk5MDA=" target="_blank">http://clang-developers.42468.n3.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=4038287&code=anVsaWFuLm1hY2llamV3c2tpQGdtYWlsLmNvbXw0MDM4Mjg3fC00NjM1OTk5MDA=</a>><br>


> .<br>
> NAML<<a href="http://clang-developers.42468.n3.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" target="_blank">http://clang-developers.42468.n3.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml</a>><br>


><br>
<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://clang-developers.42468.n3.nabble.com/Parsing-CUDA-file-to-AST-tp4038287p4038301.html" target="_blank">http://clang-developers.42468.n3.nabble.com/Parsing-CUDA-file-to-AST-tp4038287p4038301.html</a><br>


<div class="HOEnZb"><div class="h5">Sent from the Clang Developers mailing list archive at Nabble.com.<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</div></div></blockquote></div><br></div></div>