<div dir="ltr">Hi,<div><br></div><div>I've been looking into making the spir target work with the latest version of clang.</div><div><br></div><div>Comparing the current version to this spir branch of clang</div><div><a href="https://github.com/KhronosGroup/SPIR">https://github.com/KhronosGroup/SPIR</a></div><div>I found these pieces missing that are necessary to generate confirming spir code:</div><div><br></div><div>1) the "<span style="color:rgb(0,0,0);white-space:pre-wrap">-cl-kernel-arg-info" option currently suppresses the generation of all kernel metadata when it should only omit the "</span><span style="color:rgb(0,0,0);white-space:pre-wrap">kernel_arg_name" name node</span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap"><br></span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap">2) The "</span><span style="color:rgb(0,0,0);white-space:pre-wrap">spir_kernel" calling convention needs to be set on kernel functions</span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap"><br></span></div><div><span style="color:rgb(0,0,0);white-space:pre-wrap">3) Additional spir metadata needs to be added to the generated module. Done by this code: </span><a href="https://github.com/KhronosGroup/SPIR/blob/spir_12/lib/CodeGen/CGSPIRMetadataAdder.cpp">https://github.com/KhronosGroup/SPIR/blob/spir_12/lib/CodeGen/CGSPIRMetadataAdder.cpp</a></div><div><br></div><div>4) An additional "<font face="Menlo"><span style="font-size:11px">cl-spir-compile-options" option is added to clang to allow options to be passed through in the SPIR metadata</span></font></div><div><font face="Menlo"><span style="font-size:11px"><br></span></font></div><div>Do anyone see any obstacles to checking in these pieces? or know why they haven't been committed already?</div><div><br></div><div>Thanks</div><div><br></div></div>