<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=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@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:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
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;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle19
        {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.25in 1.0in 1.25in;}
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 lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">This is fixed by Andrea’s patch about one week ago<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> llvmdev-bounces@cs.uiuc.edu [mailto:llvmdev-bounces@cs.uiuc.edu]
<b>On Behalf Of </b>yalong@multicorewareinc.com<br>
<b>Sent:</b> Friday, July 11, 2014 12:45 AM<br>
<b>To:</b> Matt Arsenault; Kevin Qin<br>
<b>Cc:</b> llvmdev<br>
<b>Subject:</b> Re: [LLVMdev] Help!!!!Help!!!! " LLVM ERROR: Cannot select: 0x9fc9680: i32 = fp32_to_fp16 0x9fc0750 [ID=16] " problem!!!!!!!!!!!!!!!!!!<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">Hi Matt,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">    Thank you your replying. I try to use <span style="background:white"> @llvm.convert.to/from.fp16 intrinsics before, I also meet "LLVM ERROR: Cannot select:
   fp32_to_fp16" problem, maybe these functions call fptrunc/fpext. Following is detail log:</span><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">LLVM ERROR: Cannot select: 0x9fc9680: i32 = fp32_to_fp16 0x9fc0750 [ID=16] <br>
0x9fc0750: f32,ch = load 0x3aafd68, 0x9fc2a20, 0x9feaab0<LD4[%sunkaddr85033]> [ORD=125117] [ID=15] <br>
0x9fc2a20: i32 = add 0x9fed880, 0x9fd9ea0 [ORD=125115] [ID=13] <br>
0x9fed880: i32,ch = CopyFromReg 0x3aafd68, 0x9fbea90 [ORD=125114] [ID=9] <br>
0x9fbea90: i32 = Register %vreg13999 [ORD=125114] [ID=1] <br>
0x9fd9ea0: i32 = Constant<80> [ORD=125115] [ID=2] <br>
0x9feaab0: i32 = undef [ORD=125117] [ID=4] <br>
In function: internal_function_69 <br>
Command exited with non-zero status 1<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<div class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">
<hr size="1" width="210" style="width:157.5pt" noshade="" style="color:#B5C4DF" align="left">
</span></div>
<div>
<div style="margin-left:7.5pt;margin-top:7.5pt;margin-right:7.5pt;margin-bottom:7.5pt">
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:black"><a href="mailto:yalong@multicorewareinc.com">yalong@multicorewareinc.com</a><o:p></o:p></span></p>
</div>
</div>
</div>
<blockquote style="margin-left:6.0pt">
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"> <o:p></o:p></span></p>
</div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<div>
<div>
<p class="MsoNormal" style="background:#EFEFEF"><b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black">From:</span></b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black"> <a href="mailto:Matthew.Arsenault@amd.com">Matt
 Arsenault</a><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:#EFEFEF"><b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black">Date:</span></b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black"> 2014-07-09 12:51<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:#EFEFEF"><b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black">To:</span></b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black"> <a href="mailto:yalong@multicorewareinc.com">yalong@multicorewareinc.com</a>;
<a href="mailto:kevinqindev@gmail.com">Kevin Qin</a><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:#EFEFEF"><b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black">CC:</span></b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black"> <a href="mailto:llvmdev@cs.uiuc.edu">llvmdev</a><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:#EFEFEF"><b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black">Subject:</span></b><span style="font-size:9.0pt;font-family:"Tahoma","sans-serif";color:black"> Re: [LLVMdev] Help!!!!Help!!!! " LLVM
 ERROR: Cannot select: 0x9fc9680: i32 = fp32_to_fp16 0x9fc0750 [ID=16] " problem!!!!!!!!!!!!!!!!!!<o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">On 07/09/2014 12:41 PM, Matt Arsenault wrote:<o:p></o:p></span></p>
</div>
<blockquote style="margin-left:6.0pt">
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">On 07/09/2014 03:30 PM,
<a href="mailto:yalong@multicorewareinc.com">yalong@multicorewareinc.com</a> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="margin-left:6.0pt">
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">    Thank you Kevin!!!<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">    If I use fptrunc and bitcast realise NEON vcvtt ( I can sure, "fptrunc  double %tmp to float" is right, but "fptrunc float %tmp to half" is wrong). My target
 platform is MIPS.  The command as following:<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">NEON:<span style="background:white">    </span><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black;background:white">        vcvtt.f16.f32 s2, s0</span><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><br>
<br>
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">llvm Code:<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><br>
%Vt_2 = load float* %VFP_s0, align 4 <br>
%Vt3_1 = fptrunc float %Vt_2 to half <br>
%Vt4_1 = bitcast half %Vt3_1 to i16 <br>
%Vt2_2 = bitcast float* %VFP_s2 to <2 x i16>* <br>
%Vrti_1 = load <2 x i16>* %Vt2_2, align 4 <br>
%Vrti_2 = insertelement <2 x i16> %Vrti_1, i16 %Vt4_1, i32 1 <br>
%Vt2_3 = bitcast float* %VFP_s2 to <2 x i16>* <br>
store <2 x i16> %Vrti_2, <2 x i16>* %Vt2_3, align 4 <br>
<br>
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">Error Log:<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black">LLVM ERROR: Cannot select: 0x9f554b0: ch = store 0x9d0f28c, 0x9f5d900, 0x9f54ba8, 0x9f54b20<ST2[FixedStack0](align=4), trunc to f16> [ID=52] <br>
0x9f5d900: f32,ch = load 0x9f5e290, 0x9f5dd40, 0x9f54b20<LD4[%sunkaddr69]> [ORD=1810] [ID=51] <br>
0x9f5dd40: i32 = add 0x9f55318, 0x9f5e0f8 [ORD=1808] [ID=31] <br>
0x9f55318: i32,ch = CopyFromReg 0x9d0f28c, 0x9f6a3a0 [ORD=1796] [ID=26] <br>
0x9f6a3a0: i32 = Register %vreg32 [ORD=1796] [ID=1] <br>
0x9f5e0f8: i32 = Constant<64> [ORD=1808] [ID=17] <br>
0x9f54b20: i32 = undef [ORD=1797] [ID=6] <br>
0x9f54ba8: i32 = FrameIndex<0> [ID=24] <br>
0x9f54b20: i32 = undef [ORD=1797] [ID=6] <br>
In function: testVCVTT32TO16Function <o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><o:p> </o:p></span></p>
</blockquote>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><br>
I think that support for the half type is only implemented for ARM. Last I tried to use it, I found that none of it works even on x86, and the current handling of the half conversion SDNodes seem to rely on ARM specific assumptions<o:p></o:p></span></p>
</blockquote>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI","sans-serif";color:black"><br>
Have you tried using the @llvm.convert.to/from.fp16 intrinsics instead?<o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
</body>
</html>