RFR : PPC64 : Need support for VSR spills in ppc.ad
Doerr, Martin
martin.doerr at sap.com
Wed Jan 10 17:19:29 UTC 2018
Hi Michihiro,
> R19 is commented out in bits64_constant_table_base so as not to be used:
Not to be used by MachConstantBaseNode. I don’t see how this should help.
I still suggest to add “iRegLdst tmp” with “effect(TEMP tmp)” to repl4F_immF_Ex.
Best regards,
Martin
From: Michihiro Horie [mailto:HORIE at jp.ibm.com]
Sent: Mittwoch, 10. Januar 2018 16:29
To: Doerr, Martin <martin.doerr at sap.com>
Cc: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; gromero at linux.vnet.ibm.com; hotspot-dev at openjdk.java.net; ppc-aix-port-dev at openjdk.java.net
Subject: RE: RFR : PPC64 : Need support for VSR spills in ppc.ad
Hi Martin,
Thanks a lot for your review.
>I wonder how the content of R19 should get preserved.
R19 is commented out in bits64_constant_table_base so as not to be used:
reg_class bits64_constant_table_base(
:
R18_H, R18,
/*R19_H, R19*/
R20_H, R20,
:
);
Although bits64_constant_table_base is not directly referred from anywhere, it seems to be used at the following line in ppc.ad:
const RegMask& MachConstantBaseNode::_out_RegMask = BITS64_CONSTANT_TABLE_BASE_mask();
(When I remove the declaration of bits64_constant_table_base, a build error arises at this line telling the lack of the declaration.)
>Shouldn’t repl4F_immF_Ex use a temp register instead of R19?
Thank you for the suggestion, which makes sense very much. I think I can declare temp registers in repl4F_immF_Ex.
I will try this approach if using R19 does not make sense.
I changed vm_version_ppc.cpp:
webrev: http://cr.openjdk.java.net/~mhorie/8194861/webrev.01/
Best regards,
--
Michihiro,
IBM Research - Tokyo
----- Original message -----
From: "Doerr, Martin" <martin.doerr at sap.com<mailto:martin.doerr at sap.com>>
To: Michihiro Horie <HORIE at jp.ibm.com<mailto:HORIE at jp.ibm.com>>
Cc: "ppc-aix-port-dev at openjdk.java.net<mailto:ppc-aix-port-dev at openjdk.java.net>" <ppc-aix-port-dev at openjdk.java.net<mailto:ppc-aix-port-dev at openjdk.java.net>>, "hotspot-dev at openjdk.java.net<mailto:hotspot-dev at openjdk.java.net>" <hotspot-dev at openjdk.java.net<mailto:hotspot-dev at openjdk.java.net>>, Gustavo Romero <gromero at linux.vnet.ibm.com<mailto:gromero at linux.vnet.ibm.com>>, "Lindenmaier, Goetz" <goetz.lindenmaier at sap.com<mailto:goetz.lindenmaier at sap.com>>
Subject: RE: RFR : PPC64 : Need support for VSR spills in ppc.ad
Date: Wed, Jan 10, 2018 8:17 PM
Hi Michihiro,
thanks for implementing it.
I wonder how the content of R19 should get preserved.
Shouldn’t repl4F_immF_Ex use a temp register instead of R19?
SuperwordUseVSX is still not activated in vm_version_ppc.cpp. I think we should turn it on with this change (see the TODO).
We will run tests when the R19 question is clarified.
Best regards,
Martin
From: Michihiro Horie [mailto:HORIE at jp.ibm.com]
Sent: Mittwoch, 10. Januar 2018 07:10
To: Doerr, Martin <martin.doerr at sap.com<mailto:martin.doerr at sap.com>>
Cc: ppc-aix-port-dev at openjdk.java.net<mailto:ppc-aix-port-dev at openjdk.java.net>; hotspot-dev at openjdk.java.net<mailto:hotspot-dev at openjdk.java.net>; Gustavo Romero <gromero at linux.vnet.ibm.com<mailto:gromero at linux.vnet.ibm.com>>
Subject: RFR : PPC64 : Need support for VSR spills in ppc.ad
Hi Martin,
Would you review the following change that fixes the SLP for PPC?
In this change, I added support for VSR spills. Also, I fixed how to specify registers in postalloc_expand for the float constant replication. I confirmed this change works with JTREG.
Bug: https://bugs.openjdk.java.net/browse/JDK-8194861<https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8194861&d=DwMFAg&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=6pCaUQ4ll6S-hRCrDXsSKjl9NrczviVl3vOv0-KnizA&s=HtvmfHT8WviFbLWwFAnJ1KOrzvPiwqleI_inLbbJqTE&e=>
webrev: http://cr.openjdk.java.net/~mhorie/8194861/webrev.00/
(I created a webrev under jdk/hs.)
Best regards,
--
Michihiro,
IBM Research - Tokyo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/ppc-aix-port-dev/attachments/20180110/ec50fa1f/attachment-0001.html>
More information about the ppc-aix-port-dev
mailing list