<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 15 (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:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-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;}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
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="DE" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Hi Michihiro,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">thanks for updating. I think it can get shipped when Gustavo is fine with it and jdk/submit tests have passed.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Note that changes pushed before
</span><span lang="EN-US">Thursday 16:00 UTC will go into jdk12.</span><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Best regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Martin<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Michihiro Horie <HORIE@jp.ibm.com>
<br>
<b>Sent:</b> Dienstag, 11. Dezember 2018 14:08<br>
<b>To:</b> Doerr, Martin <martin.doerr@sap.com><br>
<b>Cc:</b> core-libs-dev@openjdk.java.net; Gustavo Romero <gromero@linux.vnet.ibm.com>; hotspot-compiler-dev@openjdk.java.net; Roger Riggs <Roger.Riggs@oracle.com>; Vladimir Kozlov <vladimir.kozlov@oracle.com>; Simonis, Volker <volker.simonis@sap.com><br>
<b>Subject:</b> RE: RFR: 8213754: PPC64: Add Intrinsics for isDigit/isLowerCase/isUpperCase/isWhitespace<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p><span lang="EN-US" style="font-size:10.0pt;color:#2F2F2F">Hi Martin,</span><span lang="EN-US"><br>
<br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#2F2F2F">Thank you so much for your review and pointing out the issue on flag enablement on PPC64.</span><span lang="EN-US"><br>
<br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#2F2F2F">Latest webrev enables the flag on PPC64 using has_darn in vm_version_ppc and it is used in match_rule_supported in the ad file.</span><span lang="EN-US"><br>
</span><a href="http://cr.openjdk.java.net/~mhorie/8213754/webrev.06/"><span lang="EN-US" style="font-size:10.0pt">http://cr.openjdk.java.net/~mhorie/8213754/webrev.06/</span></a><span lang="EN-US"><br>
<br>
<br>
</span><span lang="EN-US" style="font-size:10.0pt">Best regards,</span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt">--</span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt">Michihiro,</span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt">IBM Research - Tokyo</span><span lang="EN-US"><br>
<br>
</span><img border="0" width="16" height="16" style="width:.1666in;height:.1666in" id="Picture_x0020_1" src="cid:image001.gif@01D4916D.DC385890" alt="Inactive hide details for "Doerr, Martin" ---2018/12/11 20:31:40---Hi Michihiro, the shared code looks good to me, now."><span lang="EN-US" style="font-size:10.0pt;color:#424282">"Doerr,
 Martin" ---2018/12/11 20:31:40---Hi Michihiro, the shared code looks good to me, now.</span><span lang="EN-US"><br>
<br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#5F5F5F">From: </span><span lang="EN-US" style="font-size:10.0pt">"Doerr, Martin" <</span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt">martin.doerr@sap.com</span></a><span lang="EN-US" style="font-size:10.0pt">></span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#5F5F5F">To: </span><span lang="EN-US" style="font-size:10.0pt">Vladimir Kozlov <</span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt">vladimir.kozlov@oracle.com</span></a><span lang="EN-US" style="font-size:10.0pt">>,
 Michihiro Horie <</span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt">HORIE@jp.ibm.com</span></a><span lang="EN-US" style="font-size:10.0pt">>, Gustavo Romero <</span><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt">gromero@linux.vnet.ibm.com</span></a><span lang="EN-US" style="font-size:10.0pt">></span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#5F5F5F">Cc: </span><span lang="EN-US" style="font-size:10.0pt">"</span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt">core-libs-dev@openjdk.java.net</span></a><span lang="EN-US" style="font-size:10.0pt">"
 <</span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt">core-libs-dev@openjdk.java.net</span></a><span lang="EN-US" style="font-size:10.0pt">>, "</span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt">hotspot-compiler-dev@openjdk.java.net</span></a><span lang="EN-US" style="font-size:10.0pt">"
 <</span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt">hotspot-compiler-dev@openjdk.java.net</span></a><span lang="EN-US" style="font-size:10.0pt">>, Roger Riggs <</span><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt">Roger.Riggs@oracle.com</span></a><span lang="EN-US" style="font-size:10.0pt">>,
 "Simonis, Volker" <</span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt">volker.simonis@sap.com</span></a><span lang="EN-US" style="font-size:10.0pt">></span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#5F5F5F">Date: </span><span lang="EN-US" style="font-size:10.0pt">2018/12/11 20:31</span><span lang="EN-US"><br>
</span><span lang="EN-US" style="font-size:10.0pt;color:#5F5F5F">Subject: </span>
<span lang="EN-US" style="font-size:10.0pt">RE: RFR: 8213754: PPC64: Add Intrinsics for isDigit/isLowerCase/isUpperCase/isWhitespace</span><span lang="EN-US"><o:p></o:p></span></p>
<div>
<div>
<div class="MsoNormal">
<hr size="2" width="100%" noshade="" style="color:#8091A5" align="left">
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-US"><br>
<br>
<br>
</span><tt><span lang="EN-US" style="font-size:10.0pt">Hi Michihiro,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
<tt>the shared code looks good to me, now.</tt><br>
<br>
<tt>Looks like the PPC64 is not consistent any more.</tt><br>
<tt>Where do you enable UseCharacterCompareIntrinsics on PPC64?</tt><br>
<tt>Why aren't you using it for match_rule_supported in the ad file?</tt><br>
<tt>I think has_darn could be used to enable it in vm_version_ppc.</tt><br>
<br>
<tt>Best regards,</tt><br>
<tt>Martin</tt><br>
<br>
<br>
<tt>-----Original Message-----</tt><br>
<tt>From: Vladimir Kozlov <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>
</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>Sent: Montag, 10. Dezember 2018 20:33</tt><br>
<tt>To: Michihiro Horie <</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>; Gustavo Romero <</span></tt><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">gromero@linux.vnet.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>Cc: </tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">;
</span></tt><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">; Doerr, Martin <</span></tt><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>;
 Roger Riggs <</span></tt><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>; Simonis, Volker <</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<br>
<tt>On 12/9/18 5:28 PM, Michihiro Horie wrote:</tt><br>
<tt>> Hi Vladimir,</tt><br>
<tt>> </tt><br>
<tt>> Thanks a lot for your review. I also fixed the copyright in intrinsicnode.hpp.</tt><br>
<tt>> </tt><br>
<tt>>  >Did you look on code generated by C2 with your latest changes?</tt><br>
<tt>> Yes,I usually check generated code with Oprofile and they were as expected like:</tt><br>
<tt>> :</tt><br>
<tt>> 90 0.0905 : 3fff64c27654: rlwinm r12,r9,24,8,31</tt><br>
<tt>> 12 0.0121 : 3fff64c27658: li r11,14640</tt><br>
<tt>> 15 0.0151 : 3fff64c2765c: cmprb cr5,0,r31,r11</tt><br>
<tt>> 5527 5.5587 : 3fff64c27660: setb r11,cr5</tt><br>
<tt>> 36010 36.2164 : 3fff64c27664: stb r11,16(r15)</tt><br>
<br>
<tt>Good.</tt><br>
<br>
<tt>> :</tt><br>
<tt>> </tt><br>
<tt>> I found a CSR FAQ that mentions adding a diagnostic flag do not need CSR process. This time I do not need CSR.</tt><br>
<tt>> </tt></span><a href="https://wiki.openjdk.java.net/display/csr/CSR+FAQs"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">https://wiki.openjdk.java.net/display/csr/CSR+FAQs</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
<tt>Thank is correct.</tt><br>
<br>
<tt>> </tt><br>
<tt>> Hi Gustavo,</tt><br>
<tt>> Could I ask you to sponsor the latest change webrev.05? I would like you to test it on your P9 node too.</tt><br>
<br>
<tt>Thanks,</tt><br>
<tt>Vladimir</tt><br>
<br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> Best regards,</tt><br>
<tt>> --</tt><br>
<tt>> Michihiro,</tt><br>
<tt>> IBM Research - Tokyo</tt><br>
<tt>> </tt><br>
<tt>> Inactive hide details for Vladimir Kozlov ---2018/12/08 03:48:04---From: Vladimir Kozlov <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>
</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> To: RogerVladimir Kozlov ---2018/12/08 03:48:04---From: Vladimir Kozlov <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>
 To: Roger Riggs </span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> <</tt></span><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>, Michihiro Horie <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> </tt><br>
<tt>> From: Vladimir Kozlov <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> To: Roger Riggs <</tt></span><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>, Michihiro Horie <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> Cc: </tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> Date: 2018/12/08 03:48</tt><br>
<tt>> Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>> </tt><br>
<tt>> ------------------------------------------------------------------------------------------------------------------------</tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> Hi Michihiro,</tt><br>
<tt>> </tt><br>
<tt>> Hotspot changes looks fine.</tt><br>
<tt>> Did you look on code generated by C2 with your latest changes?</tt><br>
<tt>> </tt><br>
<tt>> And Copyright year change in intrinsicnode.hpp is incorrect:</tt><br>
<tt>> </tt><br>
<tt>> - * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.</tt><br>
<tt>> + * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.</tt><br>
<tt>> </tt><br>
<tt>> Should be</tt><br>
<tt>> </tt><br>
<tt>> * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.</tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> Thanks,</tt><br>
<tt>> Vladimir</tt><br>
<tt>> </tt><br>
<tt>> On 12/7/18 10:08 AM, Roger Riggs wrote:</tt><br>
<tt>>  > Hi Michihiro,</tt><br>
<tt>>  ></tt><br>
<tt>>  > Looks fine with the updates.</tt><br>
<tt>>  ></tt><br>
<tt>>  > Its great that the change to isDigit is beneficial on other platforms too.</tt><br>
<tt>>  ></tt><br>
<tt>>  > A very small editorial:</tt><br>
<tt>>  >    There should be a comma  "," after the 2018 in the copyright of:</tt><br>
<tt>>  >    test/micro/org/openjdk/bench/java/lang/Characters.java</tt><br>
<tt>>  ></tt><br>
<tt>>  > Thanks, Roger</tt><br>
<tt>>  ></tt><br>
<tt>>  ></tt><br>
<tt>>  > On 12/07/2018 03:13 AM, Michihiro Horie wrote:</tt><br>
<tt>>  >></tt><br>
<tt>>  >> Hi Roger,</tt><br>
<tt>>  >></tt><br>
<tt>>  >> I updated my webrev.</tt><br>
<tt>>  >> </tt></span><a href="http://cr.openjdk.java.net/~mhorie/8213754/webrev.04/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/~mhorie/8213754/webrev.04/</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.04/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.04/</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >> <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.04/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.04/</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >></tt><br>
<tt>>  >> >0x80 might be a good choice or 0xff.</tt><br>
<tt>>  >> I agree,thanks.</tt><br>
<tt>>  >></tt><br>
<tt>>  >> >I was wondering about the performance without the PPC specific intrinsic but with the</tt><br>
<tt>>  >> >CharacterDataLatin1.java.template code for isDigit being:</tt><br>
<tt>>  >> >        return '0' <= ch && ch <= '9';</tt><br>
<tt>>  >> I now understand your point,thanks for your explanation. Both on Power9 and Skylake, the</tt><br>
<tt>>  >> isDigit(ch)using ‘0’…’9’explicitly in CharacterDataLatin1.java.template without PPC specific</tt><br>
<tt>>  >> intrinsicwas around 15% faster than the original code that does not include my changes. I fixed my</tt><br>
<tt>>  >> change using ‘0’…’9’for this isDigit(ch).</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >> Best regards,</tt><br>
<tt>>  >> --</tt><br>
<tt>>  >> Michihiro,</tt><br>
<tt>>  >> IBM Research - Tokyo</tt><br>
<tt>>  >></tt><br>
<tt>>  >> Inactive hide details for Roger Riggs ---2018/12/07 01:23:39---Hi Michihiro, On 12/06/2018 02:38</tt><br>
<tt>>  >> AM, Michihiro Horie wrote:Roger Riggs ---2018/12/07 01:23:39---Hi Michihiro, On 12/06/2018 02:38</tt><br>
<tt>>  >> AM, Michihiro Horie wrote:</tt><br>
<tt>>  >></tt><br>
<tt>>  >> From: Roger Riggs <</tt></span><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >> To: Michihiro Horie <</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >> Cc: </tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >> </tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">,
</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >> Date: 2018/12/07 01:23</tt><br>
<tt>>  >> Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >></tt><br>
<tt>>  >> ----------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >> Hi Michihiro,</tt><br>
<tt>>  >></tt><br>
<tt>>  >> On 12/06/2018 02:38 AM, Michihiro Horie wrote:</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Hi Roger,</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Thank you for your helpful comments. I updated new webrev, adding a parameter in the jmh</tt><br>
<tt>>  >>         test to measure ‘other’ characters and moving the file to an appropriate location, also</tt><br>
<tt>>  >>         fixing the indents and copyright year._</tt><br>
<tt>>  >>         </tt><br>
<tt>> __https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8213754_webrev.03_-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=aKLGn7JZawWsl9UR7H-PyYoTpBc23BAKMqGScywbC5U&e=</tt><br>
<tt>>  >>         <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.03/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.03/</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >></tt><br>
<tt>>  >> The choice of 256 for other is outside the range of Latin1 which is 0..255.</tt><br>
<tt>>  >> 0x80 might be a good choice or 0xff.</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>         >Is there an opportunity to improve the performance of isDigit using explicit '0'.. '9'</tt><br>
<tt>>  >>         >in CharacterDataLatin1.java.template?  The performance would need to be measured and</tt><br>
<tt>>  >>         compared.</tt><br>
<tt>>  >>         Yes, there is an opportunity: intrinsic performed 25% better than the original on Power9.</tt><br>
<tt>>  >></tt><br>
<tt>>  >> I was wondering about the performance without the PPC specific intrinsic but with the</tt><br>
<tt>>  >> CharacterDataLatin1.java.template code for isDigit being:</tt><br>
<tt>>  >>         return '0' <= ch && ch <= '9';</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>         >Is the profile of in-lining methods changed in any measurable way now that</tt><br>
<tt>>  >>         >there is an extra level of method invocation?</tt><br>
<tt>>  >>         >    Character.isLowerCase(ch) -> CharacterData.isLowerCase(ch) -> getType(ch) ==</tt><br>
<tt>>  >>         LOWERCASE_LETTER;</tt><br>
<tt>>  >>         ></tt><br>
<tt>>  >>         >instead of:</tt><br>
<tt>>  >>         >    Character.isLowerCase(ch) -> getType(ch) == LOWERCASE_LETTER;</tt><br>
<tt>>  >>         I missed this point, thanks. I tried jstack but could not find additional level.</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         LogCompilation shows CharacterDataLatin1.isLowerCase(ch) is compiled in c1:</tt><br>
<tt>>  >>         <nmethod compile_id='71' compiler='c1' level='3' entry='0x00003fff5911cd00' size='1472'</tt><br>
<tt>>  >>         address='0x00003fff5911cb90' relocation_offset='344' insts_offset='368' stub_offset='1136'</tt><br>
<tt>>  >>         scopes_data_offset='1248' scopes_pcs_offset='1336' dependencies_offset='1448'</tt><br>
<tt>>  >>         nul_chk_table_offset='1456' oops_offset='1184' metadata_offset='1192'</tt><br>
<tt>>  >>         method='java.lang.CharacterDataLatin1 isLowerCase (I)Z' bytes='15' count='1024'</tt><br>
<tt>>  >>         iicount='1025' stamp='0.058'/></tt><br>
<tt>>  >></tt><br>
<tt>>  >> Supposing some existing complex code was already taking advantage of the full allowed inline depth.</tt><br>
<tt>>  >> Then adding an extra level might change the inlining behavior.</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Existing methods in CharacterDataLatin1.java.template etc. directly invoke</tt><br>
<tt>>  >>         getProperties(ch), so isLowerCase(ch) would be more aligned with other methods if it looks</tt><br>
<tt>>  >>         like as follows?</tt><br>
<tt>>  >>         + @HotSpotIntrinsicCandidate</tt><br>
<tt>>  >>         + boolean isLowerCase(int ch) {</tt><br>
<tt>>  >>         + int props = getProperties(ch);</tt><br>
<tt>>  >>         + return (props & $$maskType) == Character.LOWERCASE_LETTER;</tt><br>
<tt>>  >>         + }</tt><br>
<tt>>  >></tt><br>
<tt>>  >> Yes, that would alleviate my concern.</tt><br>
<tt>>  >></tt><br>
<tt>>  >> Thanks, Roger</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Best regards,</tt><br>
<tt>>  >>         --</tt><br>
<tt>>  >>         Michihiro,</tt><br>
<tt>>  >>         IBM Research - Tokyo</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Inactive hide details for Roger Riggs ---2018/12/06 05:09:36---Hi Michihiro, On 12/05/2018</tt><br>
<tt>>  >>         07:21 AM, Michihiro Horie wrote:Roger Riggs ---2018/12/06 05:09:36---Hi Michihiro, On</tt><br>
<tt>>  >>         12/05/2018 07:21 AM, Michihiro Horie wrote:</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         From: Roger Riggs _<</tt></span><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:Roger.Riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:Roger.Riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         To: Michihiro Horie _<</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         </tt></span><a href="mailto:_vladimir.kozlov@oracle.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_vladimir.kozlov@oracle.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         Cc: </tt></span><a href="mailto:_core-libs-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_core-libs-dev@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         </tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         </tt></span><a href="mailto:_martin.doerr@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_volker.simonis@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         <</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>         Date: 2018/12/06 05:09</tt><br>
<tt>>  >>         Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>         isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>         ----------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Hi Michihiro,</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         On 12/05/2018 07:21 AM, Michihiro Horie wrote:</tt><br>
<tt>>  >>                         >There are a few JMH tests for upper and lower in the</tt><br>
<tt>>  >>                         jmh-jdk-microbenchmarks repo. [1]</tt><br>
<tt>>  >>                         Here is a jmh webrev for the Character methods._</tt><br>
<tt>>  >>                         </tt><br>
<tt>> __https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8213754_jmh-2Dwebrev.00_-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=v22au5r5gvv48ufyda1poelXBjJWwuotSFrv-M2AlRY&e=</tt><br>
<tt>>  >>                         <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/jmh-webrev.00/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/jmh-webrev.00/</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>
 Please include at least one </span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> character value that is not a member of any of the classes.</tt><br>
<tt>>  >>         The performance impact for 'other' characters is important also.</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         The JMH tests have been moved to the OpenJDK jdk/jdk repo in the directory:</tt><br>
<tt>>  >>            test/micro/org/openjdk/bench/java/lang/</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Now that they are in that repo, they can be included with the rest of the changeset.</tt><br>
<tt>>  >>                         Also, I updated C2 changes in the latest webrev. (Thank you for giving</tt><br>
<tt>>  >>                         valuable comments off-list, Vladimir and Martin!)</tt><br>
<tt>>  >>                         With the change in is_disabled_by_flags, I added a JVM flag that will need</tt><br>
<tt>>  >>                         another review request. I would proceed for it if this RFR is accepted._</tt><br>
<tt>>  >>                         </tt><br>
<tt>> __https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8213754_webrev.02_-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=UXQByb5dFxfAwCCppkizqG_-RWf6DhE_PFkr9TsyzKo&e=</tt><br>
<tt>>  >>                         <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.02/"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.02/</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>
 The indent in the Java code should </span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>> be 4 spaces. (Native lib code is 4 spaces, Hotspot is 2</tt><br>
<tt>>  >>         spaces)</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Please update the copyrights to include 2018.</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Is there an opportunity to improve the performance of isDigit using explicit '0'.. '9'</tt><br>
<tt>>  >>         in CharacterDataLatin1.java.template?  The performance would need to be measured and compared.</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Is the profile of in-lining methods changed in any measurable way now that</tt><br>
<tt>>  >>         there is an extra level of method invocation?</tt><br>
<tt>>  >>             Character.isLowerCase(ch) -> CharacterData.isLowerCase(ch) -> getType(ch) ==</tt><br>
<tt>>  >>         LOWERCASE_LETTER;</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         instead of:</tt><br>
<tt>>  >>             Character.isLowerCase(ch) -> getType(ch) == LOWERCASE_LETTER;</tt><br>
<tt>>  >></tt><br>
<tt>>  >>         Regards, Roger</tt><br>
<tt>>  >>                         I need a review on changes in the class library, anyway. Would be grateful</tt><br>
<tt>>  >>                         if I could have one.</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Best regards,</tt><br>
<tt>>  >>                         --</tt><br>
<tt>>  >>                         Michihiro,</tt><br>
<tt>>  >>                         IBM Research - Tokyo</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         ----- Original message -----</tt><br>
<tt>>  >>                         From: Michihiro Horie/Japan/IBM</tt><br>
<tt>>  >>                         To: Vladimir Kozlov _<</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Cc: core-libs-dev _<</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         </tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_martin.doerr@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>, Roger Riggs _<</span></tt><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_volker.simonis@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         Date: Fri, Nov 30, 2018 1:01 PM</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Hi Vladimir,</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Thank you for your further comments. I fixed my code, but I’m afraid</tt><br>
<tt>>  >>                         discussing such a basic topic involving the two big mailing lists is not</tt><br>
<tt>>  >>                         good. Please let me have a chance to talk on this off-list.</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Best regards,</tt><br>
<tt>>  >>                         --</tt><br>
<tt>>  >>                         Michihiro,</tt><br>
<tt>>  >>                         IBM Research - Tokyo</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Vladimir Kozlov ---2018/11/30 03:01:42---Hi Michihiro, I still do not</tt><br>
<tt>>  >>                         understand which Region node you are swapping. Where it is coming from?</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         From: Vladimir Kozlov _<</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         To: Michihiro Horie _<</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
 Roger</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Riggs _<</tt></span><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Cc: core-libs-dev _<</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         </tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_martin.doerr@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_volker.simonis@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Date: 2018/11/30 03:01</tt><br>
<tt>>  >>                         Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         </tt><br>
<tt>> ----------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Hi Michihiro,</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         I still do not understand which Region node you are swapping. Where it is</tt><br>
<tt>>  >>                         coming from?</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         > + // Swap current RegionNode with new one</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         Regards,</tt><br>
<tt>>  >>                         Vladimir</tt><br>
<tt>>  >></tt><br>
<tt>>  >>                         On 11/28/18 10:31 PM, Michihiro Horie wrote:</tt><br>
<tt>>  >>                         > Vladimir,Roger,</tt><br>
<tt>>  >>                         > Thank you so much for your responses.</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Vladimir,</tt><br>
<tt>>  >>                         > Regarding the hotspot change,I’m new in changing around</tt><br>
<tt>>  >>                         library_call.cpp,so your comments are very helpful. I will fix</tt><br>
<tt>>  >>                         > my code,especially inline_character_compare()would be like:</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > +bool LibraryCallKit::inline_character_compare(vmIntrinsics::ID id){</tt><br>
<tt>>  >>                         > + RegionNode* old_rgn = control()->as_Region();</tt><br>
<tt>>  >>                         > + RegionNode* new_rgn = new RegionNode(1);</tt><br>
<tt>>  >>                         > + record_for_igvn(new_rgn);</tt><br>
<tt>>  >>                         > +</tt><br>
<tt>>  >>                         > + // Swap current RegionNode with new one</tt><br>
<tt>>  >>                         > + Node* new_ctrl = old_rgn->in(1);</tt><br>
<tt>>  >>                         > + old_rgn->del_req(1);</tt><br>
<tt>>  >>                         > + new_rgn->add_req(new_ctrl);</tt><br>
<tt>>  >>                         > +</tt><br>
<tt>>  >>                         > + set_control(_gvn.transform(new_rgn));</tt><br>
<tt>>  >>                         > +</tt><br>
<tt>>  >>                         > + // argument(0)is receiver</tt><br>
<tt>>  >>                         > + Node* codePoint = argument(1);</tt><br>
<tt>>  >>                         > + Node* n = NULL;</tt><br>
<tt>>  >>                         > +</tt><br>
<tt>>  >>                         > + switch (id){</tt><br>
<tt>>  >>                         > + case vmIntrinsics::_isDigit_c : n = new</tt><br>
<tt>>  >>                         DigitCNode(control(),codePoint);break;</tt><br>
<tt>>  >>                         > + case vmIntrinsics::_isLowerCase_c : n = new</tt><br>
<tt>>  >>                         LowerCaseCNode(control(),codePoint);break;</tt><br>
<tt>>  >>                         > + case vmIntrinsics::_isUpperCase_c : n = new</tt><br>
<tt>>  >>                         UpperCaseCNode(control(),codePoint);break;</tt><br>
<tt>>  >>                         > + case vmIntrinsics::_isWhitespace_c : n = new</tt><br>
<tt>>  >>                         WhitespaceCNode(control(),codePoint);break;</tt><br>
<tt>>  >>                         > + default:</tt><br>
<tt>>  >>                         > + fatal_unexpected_iid(id);</tt><br>
<tt>>  >>                         > + }</tt><br>
<tt>>  >>                         > +</tt><br>
<tt>>  >>                         > + set_result(_gvn.transform(n));</tt><br>
<tt>>  >>                         > + return true;</tt><br>
<tt>>  >>                         > +}</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Microbenchmark showed ~40% improvements.</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Roger,</tt><br>
<tt>>  >>                         > I would wait foryour review,thanks. I understood the discussion had not</tt><br>
<tt>>  >>                         been recognized from people in core-libs-dev,and</tt><br>
<tt>>  >>                         > checked it was not actually archived there….</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Best regards,</tt><br>
<tt>>  >>                         > --</tt><br>
<tt>>  >>                         > Michihiro,</tt><br>
<tt>>  >>                         > IBM Research - Tokyo</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Inactive hide details for Roger Riggs ---2018/11/29 11:21:26---Hi, I'll</tt><br>
<tt>>  >>                         look at it on Thursday.Roger Riggs ---2018/11/29</tt><br>
<tt>>  >>                         > 11:21:26---Hi, I'll look at it on Thursday.</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > From: Roger Riggs _<</tt></span><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_
 <</span></tt><a href="mailto:roger.riggs@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:roger.riggs@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         > To: Vladimir Kozlov _<</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:vladimir.kozlov@oracle.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:vladimir.kozlov@oracle.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>, Michihiro
 Horie _<</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_core-libs-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_core-libs-dev@openjdk.java.net_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         > Cc: </tt></span><a href="mailto:_volker.simonis@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt"> <</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         </tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
</span></tt><a href="mailto:_martin.doerr@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_</span></a><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         > Date: 2018/11/29 11:21</tt><br>
<tt>>  >>                         > Subject: Re: RFR: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         </tt><br>
<tt>> ------------------------------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > Hi,</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > I'll look at it on Thursday.</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > In spite of it looking like the email was sent to core-lib-dev, I have</tt><br>
<tt>>  >>                         > not seen it before</tt><br>
<tt>>  >>                         > and its not in the core-libs-dev archive.</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > $.02, Roger</tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         > On 11/28/18 7:15 PM, Vladimir Kozlov wrote:</tt><br>
<tt>>  >>                         >  > You still need review from core-libs.</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > About your hotspot changes. You need to add intrinsics to</tt><br>
<tt>>  >>                         >  > is_disabled_by_flags() to be able switch them off.</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > Note, match_rule_supported() calls in</tt><br>
<tt>>  >>                         >  > C2Compiler::is_intrinsic_supported() executed before intrinsics in C2</tt><br>
<tt>>  >>                         >  > are registered. So they will not be available if they are not</tt><br>
<tt>>  >>                         >  > supported. match_rule_supported() checks in</tt><br>
<tt>>  >>                         >  > LibraryCallKit::inline_character_compare() are not needed.</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > I don't get what you code in</tt><br>
<tt>>  >>                         >  > LibraryCallKit::inline_character_compare() is doing. Why you check</tt><br>
<tt>>  >>                         >  > Region node at the beginning and why you add Region and Phi at the end</tt><br>
<tt>>  >>                         >  > if you have only one path?</tt><br>
<tt>>  >>                         >  > You are creating code for whole method which should return boolean result</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > +    boolean isDigit(int ch) {</tt><br>
<tt>>  >>                         >  > +      return getType(ch) == Character.DECIMAL_DIGIT_NUMBER;</tt><br>
<tt>>  >>                         >  > +    }</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > but your code produce TypeInt::CHAR. why?</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > An finally. Did you compare code generated by default and with you</tt><br>
<tt>>  >>                         >  > changes? what improvement you see?</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > Thanks,</tt><br>
<tt>>  >>                         >  > Vladimir</tt><br>
<tt>>  >>                         >  ></tt><br>
<tt>>  >>                         >  > On 11/28/18 3:07 PM, Michihiro Horie wrote:</tt><br>
<tt>>  >>                         >  >> Is there any response from core-libs-dev?</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Vladimir,</tt><br>
<tt>>  >>                         >  >> Could you give your suggestion on how to proceed?</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> --</tt><br>
<tt>>  >>                         >  >> Michihiro,</tt><br>
<tt>>  >>                         >  >> IBM Research - Tokyo</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> ----- Original message -----</tt><br>
<tt>>  >>                         >  >> From: "Michihiro Horie" _<</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_
 <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Sent by: "hotspot-compiler-dev"</tt><br>
<tt>>  >>                         >  >> _<</tt></span><a href="mailto:hotspot-compiler-dev-bounces@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev-bounces@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev-bounces@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev-bounces@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> To: "Doerr, Martin" _<</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Cc: "Simonis, Volker" _<</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> _"</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">"_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_<</span></tt><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> _"</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">"_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_<</span></tt><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Subject: RE: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >> Date: Thu, Nov 22, 2018 11:28 AM</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Hi Martin,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Yes, we should wait for the feedback on class library change.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >>  >Btw. I think you can further simplify the code in library_call.cpp</tt><br>
<tt>>  >>                         >  >> (no phi). But we can discuss details when thedirection regarding the</tt><br>
<tt>>  >>                         >  >> java classes is clear.</tt><br>
<tt>>  >>                         >  >> Thank you for pointing out it, I think I understand how to simplify</tt><br>
<tt>>  >>                         >  >> code.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >>  >Hi Michi,</tt><br>
<tt>>  >>                         >  >>  ></tt><br>
<tt>>  >>                         >  >>  >On 11/20/2018 02:52 PM, Michihiro Horie wrote:</tt><br>
<tt>>  >>                         >  >>  >> >Please note that we don’t have a machine, yet. So other people</tt><br>
<tt>>  >>                         >  >> will have to test.</tt><br>
<tt>>  >>                         >  >>  >> I think Gustavo can help testing this change when its' ready.</tt><br>
<tt>>  >>                         >  >>  >Sure :)</tt><br>
<tt>>  >>                         >  >>  ></tt><br>
<tt>>  >>                         >  >>  >Best regards,</tt><br>
<tt>>  >>                         >  >>  >Gustavo</tt><br>
<tt>>  >>                         >  >> Thank you, Gustavo.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> --</tt><br>
<tt>>  >>                         >  >> Michihiro,</tt><br>
<tt>>  >>                         >  >> IBM Research - Tokyo</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Inactive hide details for "Doerr, Martin" ---2018/11/22 01:33:34---Hi</tt><br>
<tt>>  >>                         >  >> Michihiro, thanks. This proposal makes the javacode much"Doerr,</tt><br>
<tt>>  >>                         >  >> Martin" ---2018/11/22 01:33:34---Hi Michihiro, thanks. This proposal</tt><br>
<tt>>  >>                         >  >> makes the java code much moreintrinsics friendly.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> From: "Doerr, Martin" _<</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> To: Michihiro Horie _<</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> _"</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">"_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_<</span></tt><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:core-libs-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:core-libs-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Cc: _"</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">"_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> _<</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         <</tt></span><a href="mailto:hotspot-compiler-dev@openjdk.java.net"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:hotspot-compiler-dev@openjdk.java.net</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,
 "Simonis,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Volker"_<</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Gustavo Romero</tt><br>
<tt>>  >>                         >  >> _<</tt></span><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">gromero@linux.vnet.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:gromero@linux.vnet.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Date: 2018/11/22 01:33</tt><br>
<tt>>  >>                         >  >> Subject: RE: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         </tt><br>
<tt>> ------------------------------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Hi Michihiro,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> thanks. This proposal makes the java code much more intrinsics friendly.</tt><br>
<tt>>  >>                         >  >> We should wait for feedback from the core lib folks. Maybe they have</tt><br>
<tt>>  >>                         >  >> some requirements or other proposals.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I think these intrinsics should be interesting for Oracle, Intel and</tt><br>
<tt>>  >>                         >  >> others, too.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Btw. I think you can further simplify the code in library_call.cpp</tt><br>
<tt>>  >>                         >  >> (no phi). But we can discuss details when thedirection regarding the</tt><br>
<tt>>  >>                         >  >> java classes is clear.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> Martin</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> *</tt><br>
<tt>>  >>                         >  >> **From:*Michihiro Horie _<</tt></span><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_
 <</span></tt><a href="mailto:HORIE@jp.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:HORIE@jp.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>*</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> **Sent:*Mittwoch, 21. November 2018 17:14*</tt><br>
<tt>>  >>                         >  >> **To:*core-libs-dev@openjdk.java.net; Doerr, Martin</tt><br>
<tt>>  >>                         >  >> _<</tt></span><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:martin.doerr@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:martin.doerr@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>*</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> **Cc:*hotspot-compiler-dev@openjdk.java.net; Simonis, Volker</tt><br>
<tt>>  >>                         >  >> _<</tt></span><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:volker.simonis@sap.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:volker.simonis@sap.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>;
 Gustavo</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         Romero_<</tt></span><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">gromero@linux.vnet.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>_ <</span></tt><a href="mailto:gromero@linux.vnet.ibm.com"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">mailto:gromero@linux.vnet.ibm.com</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>*</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> **Subject:*RE: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Hi Martin,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I send this RFR to core-libs-dev too, because it changes the class</tt><br>
<tt>>  >>                         >  >> library.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Through trial and error, I separated Latin1 block as in the _</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         > </tt><br>
<tt>> ___https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8213754_webrev.01-5F-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=co8xQFD19i2JBuYtSh2KKr-qUmwPdt6MEpJErzBfsd0&e=</tt><br>
<tt>>  >>                         <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.01_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.01_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         >  >> </tt><br>
<tt>> <_https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-257Emhorie_8213754_webrev.01-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=w78kALiRtp6DIYAfslpK_TGpubqajF0h32O_z_ITAF4&e=>_/_</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I followed the coding way of Character.isWhitespace() that invokes</tt><br>
<tt>>  >>                         >  >> each ChracterData’s isWhitespace() to refactorisDigit(),</tt><br>
<tt>>  >>                         >  >> isLowerCase(), and isUpperCase().</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I think this change is also useful on x86, using STTNI.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> --</tt><br>
<tt>>  >>                         >  >> Michihiro,</tt><br>
<tt>>  >>                         >  >> IBM Research - Tokyo</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> ----- Original message -----</tt><br>
<tt>>  >>                         >  >> From: "Michihiro Horie" <</tt></span><a href="mailto:_HORIE@jp.ibm.com_%20%3c_mailto:HORIE@jp.ibm.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_HORIE@jp.ibm.com_ <_mailto:HORIE@jp.ibm.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>></span></tt><span lang="EN-US"><br>
</span><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> Sent by: "hotspot-compiler-dev"</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         </tt><br>
<tt>> <</tt></span><a href="mailto:_hotspot-compiler-dev-bounces@openjdk.java.net_%3c_mailto:hotspot-compiler-dev-bounces@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev-bounces@openjdk.java.net_<_mailto:hotspot-compiler-dev-bounces@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> To: "Doerr, Martin" <</tt></span><a href="mailto:_martin.doerr@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:martin.doerr@sap.com_>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Cc: "Simonis, Volker" <</tt></span><a href="mailto:_volker.simonis@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:volker.simonis@sap.com_>>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         "</tt></span><a href="mailto:_ppc-aix-port-dev@openjdk.java.net_%3c_mailto:ppc-aix-port-dev@openjdk.java.net_%3e"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_ppc-aix-port-dev@openjdk.java.net_<_mailto:ppc-aix-port-dev@openjdk.java.net_></span></a><tt><span lang="EN-US" style="font-size:10.0pt">"</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         <</tt></span><a href="mailto:_ppc-aix-port-dev@openjdk.java.net_%3c_mailto:ppc-aix-port-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_ppc-aix-port-dev@openjdk.java.net_<_mailto:ppc-aix-port-dev@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         "</tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_%3c_mailto:hotspot-compiler-dev@openjdk.java.net_%3e"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_<_mailto:hotspot-compiler-dev@openjdk.java.net_></span></a><tt><span lang="EN-US" style="font-size:10.0pt">"</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         <</tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_%3c_mailto:hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_<_mailto:hotspot-compiler-dev@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Subject: RE: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >> Date: Wed, Nov 21, 2018 1:53 AM</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Hi Martin,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Thank you for giving your helpful comments. I did not recognize</tt><br>
<tt>>  >>                         >  >> “generate_method_call_static” prevents anyoptimizations, but I now</tt><br>
<tt>>  >>                         >  >> checked it actually degraded the performance, thanks.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >>  >Please note that we don’t have a machine, yet. So other people will</tt><br>
<tt>>  >>                         >  >> have to test.</tt><br>
<tt>>  >>                         >  >> I think Gustavo can help testing this change when its' ready.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >>  >Would it be possible to introduce more fine-grained intrinsics such</tt><br>
<tt>>  >>                         >  >> that the “slow” path is outside of them?</tt><br>
<tt>>  >>                         >  >>  ></tt><br>
<tt>>  >>                         >  >>  >Maybe you can factor out as in the following example?</tt><br>
<tt>>  >>                         >  >>  >if (latin1) return isLatin1Digit(codePoint);</tt><br>
<tt>>  >>                         >  >>  >with isLatin1Digit as HotSpotIntrinsicCandidate.</tt><br>
<tt>>  >>                         >  >> Thanks for an example, please let me try to separate the Latin block</tt><br>
<tt>>  >>                         >  >> from other blocks for some time.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> --</tt><br>
<tt>>  >>                         >  >> Michihiro,</tt><br>
<tt>>  >>                         >  >> IBM Research - Tokyo</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Inactive hide details for "Doerr, Martin" ---2018/11/20 01:55:27---Hi</tt><br>
<tt>>  >>                         >  >> Michihiro, first of all, thanks for working onPower9 opt"Doerr,</tt><br>
<tt>>  >>                         >  >> Martin" ---2018/11/20 01:55:27---Hi Michihiro, first of all, thanks</tt><br>
<tt>>  >>                         >  >> for working on Power9optimizations. Please note that we don't ha</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> From: "Doerr, Martin" <</tt></span><a href="mailto:_martin.doerr@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:martin.doerr@sap.com_>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> To: Michihiro Horie <</tt></span><a href="mailto:_HORIE@jp.ibm.com_%20%3c_mailto:HORIE@jp.ibm.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_HORIE@jp.ibm.com_ <_mailto:HORIE@jp.ibm.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         "</tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_%3c_mailto:hotspot-compiler-dev@openjdk.java.net_%3e"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_<_mailto:hotspot-compiler-dev@openjdk.java.net_></span></a><tt><span lang="EN-US" style="font-size:10.0pt">"</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         <</tt></span><a href="mailto:_hotspot-compiler-dev@openjdk.java.net_%3c_mailto:hotspot-compiler-dev@openjdk.java.net_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_hotspot-compiler-dev@openjdk.java.net_<_mailto:hotspot-compiler-dev@openjdk.java.net_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>>,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         "</tt></span><a href="mailto:_ppc-aix-port-dev@openjdk.java.net_%3c_mailto:ppc-aix-port-dev@openjdk.java.net_%3e"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_ppc-aix-port-dev@openjdk.java.net_<_mailto:ppc-aix-port-dev@openjdk.java.net_></span></a><tt><span lang="EN-US" style="font-size:10.0pt">"</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> <</tt></span><a href="mailto:_ppc-aix-port-dev@openjdk.java.net_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_ppc-aix-port-dev@openjdk.java.net_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:ppc-aix-port-dev@openjdk.java.net_>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Cc: "Simonis, Volker" <</tt></span><a href="mailto:_volker.simonis@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:volker.simonis@sap.com_>>, "Lindenmaier,</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Goetz"<</tt></span><a href="mailto:_goetz.lindenmaier@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_goetz.lindenmaier@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:goetz.lindenmaier@sap.com_>>, Gustavo Romero</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> <</tt></span><a href="mailto:_gromero@linux.vnet.ibm.com_%3c_mailto:gromero@linux.vnet.ibm.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_gromero@linux.vnet.ibm.com_<_mailto:gromero@linux.vnet.ibm.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Date: 2018/11/20 01:55</tt><br>
<tt>>  >>                         >  >> Subject: RE: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         </tt><br>
<tt>> ------------------------------------------------------------------------------------------------------------------------</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Hi Michihiro,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> first of all, thanks for working on Power9 optimizations. Please note</tt><br>
<tt>>  >>                         >  >> that we don’t have a machine, yet. So other peoplewill have to test.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I think it may be problematic to insert a slow path by</tt><br>
<tt>>  >>                         >  >> “generate_method_call_static”. This may be a performancedisadvantage</tt><br>
<tt>>  >>                         >  >> for some users of other encodings because your intrinsics prevent</tt><br>
<tt>>  >>                         >  >> inlining and further optimizations.</tt><br>
<tt>>  >>                         >  >> Would it be possible to introduce more fine-grained intrinsics such</tt><br>
<tt>>  >>                         >  >> that the “slow” path is outside of them?</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Maybe you can factor out as in the following example?</tt><br>
<tt>>  >>                         >  >> if (latin1) return isLatin1Digit(codePoint);</tt><br>
<tt>>  >>                         >  >> with isLatin1Digit as HotSpotIntrinsicCandidate.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> I can’t judge if this is needed, but I think this should be discussed</tt><br>
<tt>>  >>                         >  >> first before going into the details.</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> Martin</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> *</tt><br>
<tt>>  >>                         >  >> **From:*Michihiro Horie <</tt></span><a href="mailto:_HORIE@jp.ibm.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_HORIE@jp.ibm.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         <_mailto:HORIE@jp.ibm.com_>>*</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> **Sent:*Freitag, 16. November 2018 12:53*</tt><br>
<tt>>  >>                         >  >> **To:*_hotspot-compiler-dev@openjdk.java.net_</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         <_mailto:hotspot-compiler-dev@openjdk.java.net_>;_ppc-aix-port-dev@openjdk.java.net_</tt><br>
<tt>>  >>                         >  >> <_mailto:ppc-aix-port-dev@openjdk.java.net_>*</tt><br>
<tt>>  >>                         >  >> **Cc:*Doerr, Martin <</tt></span><a href="mailto:_martin.doerr@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_martin.doerr@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:martin.doerr@sap.com_>>; Simonis, Volker</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> <</tt></span><a href="mailto:_volker.simonis@sap.com_%3c_mailto:volker.simonis@sap.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_volker.simonis@sap.com_<_mailto:volker.simonis@sap.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>>;</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> Lindenmaier, Goetz <</tt></span><a href="mailto:_goetz.lindenmaier@sap.com_%0b"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_goetz.lindenmaier@sap.com_<br>
</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>  >>                         >  >> <_mailto:goetz.lindenmaier@sap.com_>>;Gustavo Romero</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> <</tt></span><a href="mailto:_gromero@linux.vnet.ibm.com_%20%3c_mailto:gromero@linux.vnet.ibm.com_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">_gromero@linux.vnet.ibm.com_ <_mailto:gromero@linux.vnet.ibm.com_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">>>*</span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         >  >> **Subject:*RFR: 8213754: PPC64: Add Intrinsics for</tt><br>
<tt>>  >>                         >  >> isDigit/isLowerCase/isUpperCase/isWhitespace</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Dear all,</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Would you please review following change?</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Bug:</tt><br>
<tt>>  >>                         > </tt><br>
<tt>> __https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8213754-5F-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=yTUTl4D2EPdboqkkAHXYtHx5KijWhAzXOXPBqwME0iQ&e=</tt><br>
<tt>>  >>                         >  >> Webrev:</tt><br>
<tt>>  >>                         > </tt><br>
<tt>> __https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8213754_webrev.00-5F-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=88Ms75RO8511eAgWMsvWrTDLmRRcxcKiEs_DkSZmVlc&e=</tt><br>
<tt>>  >>                         <</tt></span><a href="http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.00_"><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New"">http://cr.openjdk.java.net/%7Emhorie/8213754/webrev.00_</span></a><tt><span lang="EN-US" style="font-size:10.0pt">></span></tt><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         >  >> </tt><br>
<tt>> <_https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-257Emhorie_8213754_webrev.00-5F&d=DwIDaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=sNklBozv1ZztDu7rnM5SUgqTwPn4CPlp4Gp0uGwfVhs&s=zZl2pxTY0Dn-5RZHkTZSnIRpYzb-w9T_4d8cV7gU3iw&e=></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> This change includes the intrinsics of Character isDigit,</tt><br>
<tt>>  >>                         >  >> isLowerCase, isUpperCase, and isWhitespace to support theLatin1 block</tt><br>
<tt>>  >>                         >  >> using POWER9’s instructions cmprb and cmpeqb. The cmprb enables to</tt><br>
<tt>>  >>                         >  >> compare a character with 1 or 2 rangedbytes, while the cmpeqb</tt><br>
<tt>>  >>                         >  >> compares one with 1 to 8 values. Simple micro benchmark attached</tt><br>
<tt>>  >>                         >  >> showed improvements by 20-40%.</tt><br>
<tt>>  >>                         >  >> /</tt><br>
<tt>>  >>                         >  >> //(See attached file: Latin1Test.java)/</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >> Best regards,</tt><br>
<tt>>  >>                         >  >> --</tt><br>
<tt>>  >>                         >  >> Michihiro,</tt><br>
<tt>>  >>                         >  >> IBM Research - Tokyo</tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         >  >></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >>                         ></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  >></tt><br>
<tt>>  ></tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<tt>> </tt><br>
<br>
</span><span lang="EN-US"><br>
<br>
<o:p></o:p></span></p>
</div>
</body>
</html>