<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Fri, Oct 31, 2014 at 1:05 AM, Yang, Rong R <span dir="ltr"><<a href="mailto:rong.r.yang@intel.com" target="_blank">rong.r.yang@intel.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">HI, Paulo,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Nice to meet you:)<u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Do you use LLVM 3.6 to compile the Beignet’s C/C++ code?<u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Sorry, I mistake that you only use LLVM 3.6 as Beignet’s OpenCL language compiler.</span></p></div></div></blockquote><div><br></div><div><br></div><div>That is correct, im trying to create ubuntu packages for beignet with latest mesa git + llvm 3.6, and like i reported, im getting compilations errors because of the new stricter c11 rules that llvm started to enforce (at least i think thats the cause of the miss compilation)</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">I have quick look these compilation. For strict-aliasing warning, I think it is the clang’s issue.<u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Because in beignet/backend/src/backend/program.cpp:59 only include the file CodeGenAction.h, and the all warnings are in clang internal.<u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">MB conflict with LLV, I will fix it.<u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><a name="149642afd8ed0383__MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">And convert ‘std::unique_ptr<llvm::Module>’ to ‘llvm::Module*’ error, it is caused by using LLVM 3.6 as
 Beignet’s OpenCL language compiler, because LLVM 3.6 haven’t officially released, Beignet don’t support it now.<u></u><u></u></span></a></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> </span></p></div></div></blockquote><div><br></div><div>I know its beyond your scope but could you send me a patch with fixes that allows me to cleanly compile beignet under llvm 3.6? radeon opencl uses llvm too and i caught several missbehaviours when using both opencl implementations that would be nice to report, once i get a working system running.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Yang, Rong</span></p></div></div></blockquote><div><br></div><div>best regards</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u><u></u></span></p>
<p class="MsoNormal" style="text-indent:9.0pt"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> Paulo Dias [mailto:<a href="mailto:paulo.miguel.dias@gmail.com" target="_blank">paulo.miguel.dias@gmail.com</a>]
<br>
<b>Sent:</b> Thursday, October 30, 2014 10:49<br>
<b>To:</b> Yang, Rong R<br>
<b>Cc:</b> <a href="mailto:beignet@lists.freedesktop.org" target="_blank">beignet@lists.freedesktop.org</a>; <a href="mailto:junyan.he@linux.intel.com" target="_blank">junyan.he@linux.intel.com</a><br>
<b>Subject:</b> Re: beignet doesnt compile with LLVM 3.6<u></u><u></u></span></p>
</div>
</div><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Hi Yang, nice to meet you.<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">I agree with LLVM changing code from the development branch, but in this case, the compilation is failing because they switched to a stricter language convention, so it might be wiser to fix the code sooner then later.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Im also creating beignet packages for future inclusion in ubuntu (im just a community contributor, not a canonical employee), and ive been testing beignet + opencl (mesa) for radeon and intel drivers. So it would help me alot if you guys
 could fix this compilation, since i have a few bugs i want to commit to you guys but i need to test latest mesa, intel, radeon code.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Best regards <u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal"><br clear="all">
<u></u><u></u></p>
<div>
<p class="MsoNormal">| Paulo Dias<u></u><u></u></p>
<div>
<p class="MsoNormal">| <a href="mailto:paulo.miguel.dias@gmail.com" target="_blank">
paulo.miguel.dias@gmail.com</a><u></u><u></u></p>
<p><b><i><span style="font-size:8.0pt;font-family:"Arial","sans-serif";background:white">Tempora mutantur, nos et mutamur in illis.</span></i></b><u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">On Thu, Oct 30, 2014 at 12:22 AM, Yang, Rong R <<a href="mailto:rong.r.yang@intel.com" target="_blank">rong.r.yang@intel.com</a>> wrote:<u></u><u></u></p>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Because LLVM change the head file frequently, Beignet only support the released version LLVM, from
 3.3 to 3.5. You can get this information from Beignet wiki:</span> <span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">
<a href="http://www.freedesktop.org/wiki/Software/Beignet/" target="_blank">http://www.freedesktop.org/wiki/Software/Beignet/</a>.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">For any beignet question, you can send to the mailing list,
<a href="mailto:beignet@lists.freedesktop.org" target="_blank">beignet@lists.freedesktop.org</a>, and send bug reports to
<a href="https://bugs.freedesktop.org/enter_bug.cgi?product=Beignet" target="_blank">
https://bugs.freedesktop.org/enter_bug.cgi?product=Beignet</a>.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks,</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Yang Rong</span><u></u><u></u></p>
<p class="MsoNormal"><a name="149642afd8ed0383_1495edc89bad4b3e__MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></a><u></u><u></u></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> Paulo Dias [mailto:<a href="mailto:paulo.miguel.dias@gmail.com" target="_blank">paulo.miguel.dias@gmail.com</a>]
<br>
<b>Sent:</b> Wednesday, October 29, 2014 21:50<br>
<b>To:</b> Yang, Rong R; <a href="mailto:junyan.he@linux.intel.com" target="_blank">
junyan.he@linux.intel.com</a><br>
<b>Subject:</b> beignet doesnt compile with LLVM 3.6</span><u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<p class="MsoNormal">Hi, sorry to bother you.<u></u><u></u></p>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">I've been trying to compile beignet from git with LLVM 3.6.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Unfortunatelly, with the new LLVM restrictions, beignet fails to compile, could you take a look at it?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">BTW, what is the proper way to send bug reports? do you guys have a freenode irc channel?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">here is the compilation output:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">----<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">In file included from /usr/lib/llvm-3.6/include/clang/AST/Decl.h:17:0,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /usr/lib/llvm-3.6/include/clang/AST/ASTTypeTraits.h:20,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /usr/lib/llvm-3.6/include/clang/AST/ASTContext.h:18,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /usr/lib/llvm-3.6/include/clang/Frontend/ASTUnit.h:18,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /usr/lib/llvm-3.6/include/clang/Frontend/FrontendAction.h:24,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /usr/lib/llvm-3.6/include/clang/CodeGen/CodeGenAction.h:13,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/backend/program.cpp:59:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APSInt& clang::APValue::getInt()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:202:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return *(APSInt*)(char*)Data.buffer;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                  ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APFloat& clang::APValue::getFloat()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:210:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return *(APFloat*)(char*)Data.buffer;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                   ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APSInt& clang::APValue::getComplexIntReal()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:218:48: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((ComplexAPSInt*)(char*)Data.buffer)->Real;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APSInt& clang::APValue::getComplexIntImag()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:226:48: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((ComplexAPSInt*)(char*)Data.buffer)->Imag;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APFloat& clang::APValue::getComplexFloatReal()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:234:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((ComplexAPFloat*)(char*)Data.buffer)->Real;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                 ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue::APFloat& clang::APValue::getComplexFloatImag()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:242:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((ComplexAPFloat*)(char*)Data.buffer)->Imag;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                 ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getVectorElt(unsigned int)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:261:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((Vec*)(char*)Data.buffer)->Elts[I];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                      ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘unsigned int clang::APValue::getVectorLength() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:268:51: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const Vec*)(const void *)Data.buffer)->NumElts;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                   ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getArrayInitializedElt(unsigned int)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:274:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((Arr*)(char*)Data.buffer)->Elts[I];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                      ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getArrayFiller()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:285:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((Arr*)(char*)Data.buffer)->Elts[getArrayInitializedElts()];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                      ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘unsigned int clang::APValue::getArrayInitializedElts() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:292:51: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const Arr*)(const void *)Data.buffer)->NumElts;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                   ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘unsigned int clang::APValue::getArraySize() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:296:51: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const Arr*)(const void *)Data.buffer)->ArrSize;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                   ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘unsigned int clang::APValue::getStructNumBases() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:301:57: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const StructData*)(const char*)Data.buffer)->NumBases;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                         ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘unsigned int clang::APValue::getStructNumFields() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:305:57: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const StructData*)(const char*)Data.buffer)->NumFields;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                         ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getStructBase(unsigned int)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:309:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((StructData*)(char*)Data.buffer)->Elts[i];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getStructField(unsigned int)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:313:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((StructData*)(char*)Data.buffer)->Elts[getStructNumBases() + i];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘const clang::FieldDecl* clang::APValue::getUnionField() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:324:56: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const UnionData*)(const char*)Data.buffer)->Field;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                        ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘clang::APValue& clang::APValue::getUnionValue()’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:328:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return *((UnionData*)(char*)Data.buffer)->Value;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘const clang::AddrLabelExpr* clang::APValue::getAddrLabelDiffLHS() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:340:64: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const AddrLabelDiffData*)(const char*)Data.buffer)->LHSExpr;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                                ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘const clang::AddrLabelExpr* clang::APValue::getAddrLabelDiffRHS() const’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:344:64: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     return ((const AddrLabelDiffData*)(const char*)Data.buffer)->RHSExpr;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                                ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setInt(clang::APValue::APSInt)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:349:29: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     *(APSInt *)(char *)Data.buffer = std::move(I);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setFloat(clang::APValue::APFloat)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:353:30: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     *(APFloat *)(char *)Data.buffer = std::move(F);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                              ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setVector(const clang::APValue*, unsigned int)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:357:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((Vec*)(char*)Data.buffer)->Elts = new APValue[N];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                               ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:358:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((Vec*)(char*)Data.buffer)->NumElts = N;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                               ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:360:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">       ((Vec*)(char*)Data.buffer)->Elts[i] = E[i];<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                 ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setComplexInt(clang::APValue::APSInt, clang::APValue::APSInt)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:366:43: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((ComplexAPSInt *)(char *)Data.buffer)->Real = std::move(R);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                           ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:367:43: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((ComplexAPSInt *)(char *)Data.buffer)->Imag = std::move(I);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                           ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setComplexFloat(clang::APValue::APFloat, clang::APValue::APFloat)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:373:44: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((ComplexAPFloat *)(char *)Data.buffer)->Real = std::move(R);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                            ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:374:44: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((ComplexAPFloat *)(char *)Data.buffer)->Imag = std::move(I);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                            ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setUnion(const clang::FieldDecl*, const clang::APValue&)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:383:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((UnionData*)(char*)Data.buffer)->Field = Field;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                     ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:384:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     *((UnionData*)(char*)Data.buffer)->Value = Value;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                      ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h: In member function ‘void clang::APValue::setAddrLabelDiff(const clang::AddrLabelExpr*, const clang::AddrLabelExpr*)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:388:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((AddrLabelDiffData*)(char*)Data.buffer)->LHSExpr = LHSExpr;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/clang/AST/APValue.h:389:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     ((AddrLabelDiffData*)(char*)Data.buffer)->RHSExpr = RHSExpr;<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                             ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">In file included from /home/groo/devel/intel/beignet/beignet/backend/src/./sys/vector.hpp:28:0,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/./ir/register.hpp:27,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/./ir/instruction.hpp:27,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/./backend/context.hpp:23,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/backend/program.hpp:29,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                 from /home/groo/devel/intel/beignet/beignet/backend/src/backend/program.cpp:26:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/llvm/Support/SpecialCaseList.h: At global scope:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/home/groo/devel/intel/beignet/beignet/backend/src/./sys/platform.hpp:263:12: error: expected ‘,’ or ‘...’ before ‘(’ token<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> #define MB (KB*KB)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">            ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/llvm/Support/SpecialCaseList.h:67:70: note: in expansion of macro ‘MB’<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">   static std::unique_ptr<SpecialCaseList> create(const MemoryBuffer *MB,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                                                      ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/home/groo/devel/intel/beignet/beignet/backend/src/./sys/platform.hpp:263:12: error: expected ‘,’ or ‘...’ before ‘(’ token<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> #define MB (KB*KB)<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">            ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/usr/lib/llvm-3.6/include/llvm/Support/SpecialCaseList.h:92:34: note: in expansion of macro ‘MB’<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">   bool parse(const MemoryBuffer *MB, std::string &Error);<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                  ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/home/groo/devel/intel/beignet/beignet/backend/src/backend/program.cpp: In function ‘bool gbe::buildModuleFromSource(const char*, llvm::Module**, llvm::LLVMContext*, std::vector<std::basic_string<char>
 >&, size_t, char*, size_t*)’:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">/home/groo/devel/intel/beignet/beignet/backend/src/backend/program.cpp:614:44: error: cannot convert ‘std::unique_ptr<llvm::Module>’ to ‘llvm::Module*’ in initialization<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">     llvm::Module *module = Act->takeModule();<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">                                            ^<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">backend/src/CMakeFiles/<a href="http://gbe.dir/build.make:583" target="_blank">gbe.dir/build.make:583</a>: recipe for target 'backend/src/CMakeFiles/<a href="http://gbe.dir/backend/program.cpp.o" target="_blank">gbe.dir/backend/program.cpp.o</a>'
 failed<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">make[3]: *** [backend/src/CMakeFiles/<a href="http://gbe.dir/backend/program.cpp.o" target="_blank">gbe.dir/backend/program.cpp.o</a>] Error 1<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal">---<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">best regards<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal">| Paulo Dias<u></u><u></u></p>
<div>
<p class="MsoNormal">|
<a href="mailto:paulo.miguel.dias@gmail.com" target="_blank">paulo.miguel.dias@gmail.com</a><u></u><u></u></p>
<p><b><i><span style="font-size:8.0pt;font-family:"Arial","sans-serif";background:white">Tempora mutantur, nos et mutamur in illis.</span></i></b><u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div></div></div>
</div>
</div>

</blockquote></div><br></div></div>