RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi, May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions? We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L. This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern. I also fixed some comments in "format %{ ... %}" to show correct matching types. Bug: https://bugs.openjdk.java.net/browse/JDK-8224090 Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/ Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171 Regards, Ogata
Hi, May I get review for this fix? Regards, Ogata "hotspot-compiler-dev" <hotspot-compiler-dev-bounces@openjdk.java.net> wrote on 2019/05/17 14:34:20:
From: "Kazunori Ogata" <OGATAK@jp.ibm.com> To: hotspot-compiler-dev@openjdk.java.net, ppc-aix-port-dev@openjdk.java.net Date: 2019/05/17 14:35 Subject: [EXTERNAL] RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals Sent by: "hotspot-compiler-dev" <hotspot-compiler-dev-bounces@openjdk.java.net>
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
Hi Ogata, looks good. Thanks for fixing. Best regards, Martin
-----Original Message----- From: hotspot-compiler-dev <hotspot-compiler-dev- bounces@openjdk.java.net> On Behalf Of Kazunori Ogata Sent: Freitag, 17. Mai 2019 07:34 To: hotspot-compiler-dev@openjdk.java.net; ppc-aix-port- dev@openjdk.java.net Subject: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
Hi Martin, Thank you for your review. Regards, Ogata "Doerr, Martin" <martin.doerr@sap.com> wrote on 2019/05/28 18:21:29:
From: "Doerr, Martin" <martin.doerr@sap.com> To: Kazunori Ogata <OGATAK@jp.ibm.com>, "hotspot-compiler- dev@openjdk.java.net" <hotspot-compiler-dev@openjdk.java.net>, "ppc-aix- port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Date: 2019/05/28 18:21 Subject: [EXTERNAL] RE: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
looks good. Thanks for fixing.
Best regards, Martin
-----Original Message----- From: hotspot-compiler-dev <hotspot-compiler-dev- bounces@openjdk.java.net> On Behalf Of Kazunori Ogata Sent: Freitag, 17. Mai 2019 07:34 To: hotspot-compiler-dev@openjdk.java.net; ppc-aix-port- dev@openjdk.java.net Subject: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
Hi Ogata, you change looks good, but you should use "jlong_cast()" in the "immD_0()" operand. Thank you and best regards, Volker On Tue, May 28, 2019 at 12:26 PM Kazunori Ogata <OGATAK@jp.ibm.com> wrote:
Hi Martin,
Thank you for your review.
Regards, Ogata
"Doerr, Martin" <martin.doerr@sap.com> wrote on 2019/05/28 18:21:29:
From: "Doerr, Martin" <martin.doerr@sap.com> To: Kazunori Ogata <OGATAK@jp.ibm.com>, "hotspot-compiler- dev@openjdk.java.net" <hotspot-compiler-dev@openjdk.java.net>, "ppc-aix- port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Date: 2019/05/28 18:21 Subject: [EXTERNAL] RE: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
looks good. Thanks for fixing.
Best regards, Martin
-----Original Message----- From: hotspot-compiler-dev <hotspot-compiler-dev- bounces@openjdk.java.net> On Behalf Of Kazunori Ogata Sent: Freitag, 17. Mai 2019 07:34 To: hotspot-compiler-dev@openjdk.java.net; ppc-aix-port- dev@openjdk.java.net Subject: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
Right, this needs to get changed. Best regards, Martin
-----Original Message----- From: Volker Simonis <volker.simonis@gmail.com> Sent: Dienstag, 28. Mai 2019 15:04 To: Kazunori Ogata <OGATAK@jp.ibm.com> Cc: Doerr, Martin <martin.doerr@sap.com>; hotspot-compiler- dev@openjdk.java.net; ppc-aix-port-dev@openjdk.java.net Subject: Re: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
you change looks good, but you should use "jlong_cast()" in the "immD_0()" operand.
Thank you and best regards, Volker
On Tue, May 28, 2019 at 12:26 PM Kazunori Ogata <OGATAK@jp.ibm.com> wrote:
Hi Martin,
Thank you for your review.
Regards, Ogata
"Doerr, Martin" <martin.doerr@sap.com> wrote on 2019/05/28 18:21:29:
From: "Doerr, Martin" <martin.doerr@sap.com> To: Kazunori Ogata <OGATAK@jp.ibm.com>, "hotspot-compiler- dev@openjdk.java.net" <hotspot-compiler-dev@openjdk.java.net>,
"ppc-aix-
port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Date: 2019/05/28 18:21 Subject: [EXTERNAL] RE: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
looks good. Thanks for fixing.
Best regards, Martin
-----Original Message----- From: hotspot-compiler-dev <hotspot-compiler-dev- bounces@openjdk.java.net> On Behalf Of Kazunori Ogata Sent: Freitag, 17. Mai 2019 07:34 To: hotspot-compiler-dev@openjdk.java.net; ppc-aix-port- dev@openjdk.java.net Subject: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
Hi Volker and Martin, Thank you for your comment. I updated the webrev. http://cr.openjdk.java.net/~horii/8224090/webrev.01/ Regards, Ogata "Doerr, Martin" <martin.doerr@sap.com> wrote on 2019/05/28 23:04:15:
From: "Doerr, Martin" <martin.doerr@sap.com> To: Volker Simonis <volker.simonis@gmail.com>, Kazunori Ogata <OGATAK@jp.ibm.com> Cc: "hotspot-compiler-dev@openjdk.java.net" <hotspot-compiler- dev@openjdk.java.net>, "ppc-aix-port-dev@openjdk.java.net" <ppc-aix-port- dev@openjdk.java.net> Date: 2019/05/28 23:08 Subject: RE: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Right, this needs to get changed.
Best regards, Martin
-----Original Message----- From: Volker Simonis <volker.simonis@gmail.com> Sent: Dienstag, 28. Mai 2019 15:04 To: Kazunori Ogata <OGATAK@jp.ibm.com> Cc: Doerr, Martin <martin.doerr@sap.com>; hotspot-compiler- dev@openjdk.java.net; ppc-aix-port-dev@openjdk.java.net Subject: Re: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
you change looks good, but you should use "jlong_cast()" in the "immD_0()" operand.
Thank you and best regards, Volker
On Tue, May 28, 2019 at 12:26 PM Kazunori Ogata <OGATAK@jp.ibm.com> wrote:
Hi Martin,
Thank you for your review.
Regards, Ogata
"Doerr, Martin" <martin.doerr@sap.com> wrote on 2019/05/28 18:21:29:
From: "Doerr, Martin" <martin.doerr@sap.com> To: Kazunori Ogata <OGATAK@jp.ibm.com>, "hotspot-compiler- dev@openjdk.java.net" <hotspot-compiler-dev@openjdk.java.net>,
"ppc-aix-
port-dev@openjdk.java.net" <ppc-aix-port-dev@openjdk.java.net> Date: 2019/05/28 18:21 Subject: [EXTERNAL] RE: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi Ogata,
looks good. Thanks for fixing.
Best regards, Martin
-----Original Message----- From: hotspot-compiler-dev <hotspot-compiler-dev- bounces@openjdk.java.net> On Behalf Of Kazunori Ogata Sent: Freitag, 17. Mai 2019 07:34 To: hotspot-compiler-dev@openjdk.java.net; ppc-aix-port- dev@openjdk.java.net Subject: RFR: 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals
Hi,
May I get review for a webrev to fix SLP patterns that use PPC64 VSX instructions?
We found that SLP patterns added by JDK-8208171 [1] use incorrect data type, so the patterns have never been used. Further, the pattern for filling -1.0 is confused with the operation for filling -1L.
This webrev fixes the pattern to fill an array with 0 to use 0.0d instead of 0d, and removes the pattern to will with -1 because the bit pattern of -1.0d is not easy to generate using a single VSX instruction. It's should be better to load the literal from TOC and use general repl2D_reg_Ex pattern.
I also fixed some comments in "format %{ ... %}" to show correct matching types.
Bug: https://bugs.openjdk.java.net/browse/JDK-8224090
Webrev: http://cr.openjdk.java.net/~horii/8224090/webrev.00/
Ref: [1] https://bugs.openjdk.java.net/browse/JDK-8208171
Regards, Ogata
participants (3)
-
Doerr, Martin
-
Kazunori Ogata
-
Volker Simonis