<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=white lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal style='margin-left:.5in'><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext'> llvmdev-bounces@cs.uiuc.edu [mailto:llvmdev-bounces@cs.uiuc.edu] <b>On Behalf Of </b>Joshua Cranmer<br><b>Sent:</b> Tuesday, April 24, 2012 9:54 PM<br><b>To:</b> llvmdev@cs.uiuc.edu<br><b>Subject:</b> Re: [LLVMdev] [PATCH][RFC] NVPTX Backend<o:p></o:p></span></p><p class=MsoNormal style='margin-left:.5in'><o:p> </o:p></p><p class=MsoNormal style='margin-left:.5in'>On 4/24/2012 1:50 PM, Justin Holewinski wrote: <o:p></o:p></p><p class=MsoNormal style='margin-left:.5in'>Hi LLVMers,<o:p></o:p></p><p class=MsoNormal style='margin-left:.5in'> <o:p></o:p></p><p class=MsoNormal style='margin-left:.5in'>We at NVIDIA would like to contribute back to the LLVM open-source community by up-streaming the NVPTX back-end for LLVM.  This back-end is based on the sources used by NVIDIA, and currently provides significantly more functionality than the current PTX back-end.  Some functionality is currently disabled due to dependencies on LLVM core changes that we are also in the process of up-streaming, but the back-end is very usable in its current state and would benefit all current and future users of the LLVM PTX back-end.<o:p></o:p></p><p class=MsoNormal style='margin-left:.5in'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'><br>I've ended up having to make some local modifications to the PTX backend that I was preparing to post patches for, although, if it's going away, I guess I shouldn't bother. :-)</span><span style='font-size:12.0pt;font-family:"Times New Roman","serif";color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'>If the patches are still applicable, then by all means! :)<o:p></o:p></span></p><p class=MsoNormal style='margin-left:.5in'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'><br><br>Leafing through the patch briefly, though, I don't think I see any support for the LLVM rem instruction, nor do I see any support for the llvm exp2/log2 intrinsics... am I missing something, or are these operations (still) unsupported in the NVPTX backend? On the plus side, it's nice to see that at least two or three of the small fixes are already fixed.</span><span style='font-size:12.0pt;font-family:"Times New Roman","serif";color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'>Integer srem/urem are supported (see NVPTXInstrInfo.td), frem is not.  At the moment, we only support intrinsics listed in the LLVM language reference, but the PTX versions of ex2/lg2 are exposed through the llvm.nvvm.{ex2,lg2}.approx.{f,d,ftz.f} intrinsics (see include/llvm/IntrinsicsNVVM.td).<o:p></o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:.5in'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'><br><br><o:p></o:p></span></p><pre style='margin-left:.5in'>-- <o:p></o:p></pre><pre style='margin-left:.5in'>Joshua Cranmer<o:p></o:p></pre><pre style='margin-left:.5in'>News submodule owner<o:p></o:p></pre><pre style='margin-left:.5in'>DXR coauthor<o:p></o:p></pre></div>
<DIV>
<HR>
</DIV>
<DIV>This email message is for the sole use of the intended recipient(s) and may 
contain confidential information.  Any unauthorized review, use, disclosure 
or distribution is prohibited.  If you are not the intended recipient, 
please contact the sender by reply email and destroy all copies of the original 
message. </DIV>
<DIV>
<HR>
</DIV>
<P></P>
</body></html>