<div dir="ltr">Yep, I did see that but I'm puzzled what's different in the execution environment of that one bot. Seems like it doesn't grok '-x cuda'. Takumi, any idea?<div><br></div><div>Eli</div></div>

<div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, May 28, 2014 at 4:04 PM, Aaron Ballman <span dir="ltr"><<a href="mailto:aaron@aaronballman.com" target="_blank">aaron@aaronballman.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It seems this commit broke one of the bots:<br>
<a href="http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/3142" target="_blank">http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/3142</a><br>
<span class="HOEnZb"><font color="#888888"><br>
~Aaron<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Wed, May 28, 2014 at 3:29 PM, Eli Bendersky <<a href="mailto:eliben@google.com">eliben@google.com</a>> wrote:<br>
> Author: eliben<br>
> Date: Wed May 28 14:29:58 2014<br>
> New Revision: 209767<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=209767&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=209767&view=rev</a><br>
> Log:<br>
> Expose CUDA function attributes to the C interface.<br>
><br>
> Until now all CUDA-specific attributes were represented with<br>
> CXCursor_UnexposedAttr; now they are actually implemented, including the Python<br>
> bindings.<br>
><br>
><br>
> Added:<br>
>     cfe/trunk/test/Index/<a href="http://attributes-cuda.cu" target="_blank">attributes-cuda.cu</a><br>
> Modified:<br>
>     cfe/trunk/bindings/python/clang/cindex.py<br>
>     cfe/trunk/include/clang-c/Index.h<br>
>     cfe/trunk/tools/libclang/CIndex.cpp<br>
>     cfe/trunk/tools/libclang/CXCursor.cpp<br>
><br>
> Modified: cfe/trunk/bindings/python/clang/cindex.py<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/bindings/python/clang/cindex.py?rev=209767&r1=209766&r2=209767&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/bindings/python/clang/cindex.py?rev=209767&r1=209766&r2=209767&view=diff</a><br>


> ==============================================================================<br>
> --- cfe/trunk/bindings/python/clang/cindex.py (original)<br>
> +++ cfe/trunk/bindings/python/clang/cindex.py Wed May 28 14:29:58 2014<br>
> @@ -1082,6 +1082,10 @@ CursorKind.PACKED_ATTR = CursorKind(408)<br>
>  CursorKind.PURE_ATTR = CursorKind(409)<br>
>  CursorKind.CONST_ATTR = CursorKind(410)<br>
>  CursorKind.NODUPLICATE_ATTR = CursorKind(411)<br>
> +CursorKind.CUDACONSTANT_ATTR = CursorKind(412)<br>
> +CursorKind.CUDADEVICE_ATTR = CursorKind(413)<br>
> +CursorKind.CUDAGLOBAL_ATTR = CursorKind(414)<br>
> +CursorKind.CUDAHOST_ATTR = CursorKind(415)<br>
><br>
>  ###<br>
>  # Preprocessing<br>
><br>
> Modified: cfe/trunk/include/clang-c/Index.h<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang-c/Index.h?rev=209767&r1=209766&r2=209767&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang-c/Index.h?rev=209767&r1=209766&r2=209767&view=diff</a><br>


> ==============================================================================<br>
> --- cfe/trunk/include/clang-c/Index.h (original)<br>
> +++ cfe/trunk/include/clang-c/Index.h Wed May 28 14:29:58 2014<br>
> @@ -2168,8 +2168,12 @@ enum CXCursorKind {<br>
>    CXCursor_PureAttr                      = 409,<br>
>    CXCursor_ConstAttr                     = 410,<br>
>    CXCursor_NoDuplicateAttr               = 411,<br>
> -  CXCursor_LastAttr                      = CXCursor_NoDuplicateAttr,<br>
> -<br>
> +  CXCursor_CUDAConstantAttr              = 412,<br>
> +  CXCursor_CUDADeviceAttr                = 413,<br>
> +  CXCursor_CUDAGlobalAttr                = 414,<br>
> +  CXCursor_CUDAHostAttr                  = 415,<br>
> +  CXCursor_LastAttr                      = CXCursor_CUDAHostAttr,<br>
> +<br>
>    /* Preprocessing */<br>
>    CXCursor_PreprocessingDirective        = 500,<br>
>    CXCursor_MacroDefinition               = 501,<br>
><br>
> Added: cfe/trunk/test/Index/<a href="http://attributes-cuda.cu" target="_blank">attributes-cuda.cu</a><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Index/attributes-cuda.cu?rev=209767&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Index/attributes-cuda.cu?rev=209767&view=auto</a><br>


> ==============================================================================<br>
> --- cfe/trunk/test/Index/<a href="http://attributes-cuda.cu" target="_blank">attributes-cuda.cu</a> (added)<br>
> +++ cfe/trunk/test/Index/<a href="http://attributes-cuda.cu" target="_blank">attributes-cuda.cu</a> Wed May 28 14:29:58 2014<br>
> @@ -0,0 +1,16 @@<br>
> +// RUN: c-index-test -test-load-source all -x cuda %s | FileCheck %s<br>
> +<br>
> +__attribute__((device)) void f_device();<br>
> +__attribute__((global)) void f_global();<br>
> +__attribute__((constant)) int* g_constant;<br>
> +__attribute__((host)) void f_host();<br>
> +<br>
> +<br>
> +// CHECK:       attributes-cuda.cu:3:30: FunctionDecl=f_device:3:30<br>
> +// CHECK-NEXT:  attributes-cuda.cu:3:16: attribute(device)<br>
> +// CHECK:       attributes-cuda.cu:4:30: FunctionDecl=f_global:4:30<br>
> +// CHECK-NEXT:  attributes-cuda.cu:4:16: attribute(global)<br>
> +// CHECK:       attributes-cuda.cu:5:32: VarDecl=g_constant:5:32 (Definition)<br>
> +// CHECK-NEXT:  attributes-cuda.cu:5:16: attribute(constant)<br>
> +// CHECK:       attributes-cuda.cu:6:28: FunctionDecl=f_host:6:28<br>
> +// CHECK-NEXT:  attributes-cuda.cu:6:16: attribute(host)<br>
><br>
> Modified: cfe/trunk/tools/libclang/CIndex.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CIndex.cpp?rev=209767&r1=209766&r2=209767&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CIndex.cpp?rev=209767&r1=209766&r2=209767&view=diff</a><br>


> ==============================================================================<br>
> --- cfe/trunk/tools/libclang/CIndex.cpp (original)<br>
> +++ cfe/trunk/tools/libclang/CIndex.cpp Wed May 28 14:29:58 2014<br>
> @@ -3879,6 +3879,14 @@ CXString clang_getCursorKindSpelling(enu<br>
>      return cxstring::createRef("attribute(const)");<br>
>    case CXCursor_NoDuplicateAttr:<br>
>      return cxstring::createRef("attribute(noduplicate)");<br>
> +  case CXCursor_CUDAConstantAttr:<br>
> +    return cxstring::createRef("attribute(constant)");<br>
> +  case CXCursor_CUDADeviceAttr:<br>
> +    return cxstring::createRef("attribute(device)");<br>
> +  case CXCursor_CUDAGlobalAttr:<br>
> +    return cxstring::createRef("attribute(global)");<br>
> +  case CXCursor_CUDAHostAttr:<br>
> +    return cxstring::createRef("attribute(host)");<br>
>    case CXCursor_PreprocessingDirective:<br>
>      return cxstring::createRef("preprocessing directive");<br>
>    case CXCursor_MacroDefinition:<br>
><br>
> Modified: cfe/trunk/tools/libclang/CXCursor.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CXCursor.cpp?rev=209767&r1=209766&r2=209767&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CXCursor.cpp?rev=209767&r1=209766&r2=209767&view=diff</a><br>


> ==============================================================================<br>
> --- cfe/trunk/tools/libclang/CXCursor.cpp (original)<br>
> +++ cfe/trunk/tools/libclang/CXCursor.cpp Wed May 28 14:29:58 2014<br>
> @@ -53,6 +53,10 @@ static CXCursorKind GetCursorKind(const<br>
>      case attr::Pure: return CXCursor_PureAttr;<br>
>      case attr::Const: return CXCursor_ConstAttr;<br>
>      case attr::NoDuplicate: return CXCursor_NoDuplicateAttr;<br>
> +    case attr::CUDAConstant: return CXCursor_CUDAConstantAttr;<br>
> +    case attr::CUDADevice: return CXCursor_CUDADeviceAttr;<br>
> +    case attr::CUDAGlobal: return CXCursor_CUDAGlobalAttr;<br>
> +    case attr::CUDAHost: return CXCursor_CUDAHostAttr;<br>
>    }<br>
><br>
>    return CXCursor_UnexposedAttr;<br>
><br>
><br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</div></div></blockquote></div><br></div>