RFR(S): 8246377: [PPC64] Further improvements for assembler stop function

Doerr, Martin martin.doerr at sap.com
Fri Jun 5 09:35:10 UTC 2020


Thanks. Pushed.

Best regards,
Martin


> -----Original Message-----
> From: Liu, Xin <xxinliu at amazon.com>
> Sent: Mittwoch, 3. Juni 2020 20:46
> To: Doerr, Martin <martin.doerr at sap.com>; hotspot-runtime-
> dev at openjdk.java.net; Schmidt, Lutz <lutz.schmidt at sap.com>; Andrew
> Haley (aph at redhat.com) <aph at redhat.com>
> Subject: Re: RFR(S): 8246377: [PPC64] Further improvements for assembler
> stop function
> 
> Hi, Martin,
> 
>     > You actually make TDI a variable-length instruction.  Why not just emit
>     > "(uintptr_t)msg" no matter what?
>     I don't make TDI a variable-length instruction. It's still 4 Byte like all
> instructions on PPC.
>     And MacroAssembler::stop is already variable-length. C2's HaltNode
> implementation too. I don't see any issue with that.
>     Why should we waste space and confuse disassembly if we have no
> information to add?
> ---
> Okay.
> 
>     > Particularly, "enum stop_msg_present = -0x8000" is correct but subtle.
> I'd
>     > like to learn from other reviewers.
>     Yeah, looks a bit ugly. I would have preferred 0x8000 in order to set the
> highest bit of the SI16 field, but it's signed so I need to use the negative value
> to avoid assertions complaining about integer overflow.
> ---
> Initially, I suspected that C++ can't guarantee that the enum is "signed".
> After pondering at the specification, it turns out that C++ standard actually
> can guarantee that. That's why I feel it's subtle.
> IMHO,  declaration with the explicit type is better, but it's only available in
> C++11.  "constexpr static int stop_msg_present = -0x8000".
> 
>     I think using this bit also makes the recognition of the instruction a bit more
> reliable before we read the const char* from the instruction stream.
> 
>     Btw. I have improved formatting in macroAssembler_ppc.hpp and in the os
> files as requested by Götz. Updated webrev in place.
> 
>     Are you ok with it? Can I add you as 2nd reviewer (no Reviewer status
> needed for that)?
>     Best regards,
>     Martin
> ---
> Yes, I am okay with it! thanks.
> 
> --lx
> 
> 
>     > -----Original Message-----
>     > From: Liu, Xin <xxinliu at amazon.com>
>     > Sent: Mittwoch, 3. Juni 2020 01:56
>     > To: Doerr, Martin <martin.doerr at sap.com>; hotspot-runtime-
>     > dev at openjdk.java.net; Schmidt, Lutz <lutz.schmidt at sap.com>; Andrew
>     > Haley (aph at redhat.com) <aph at redhat.com>
>     > Subject: Re: RFR(S): 8246377: [PPC64] Further improvements for
> assembler
>     > stop function
>     >
>     > Hi, Martin,
>     >
>     > I read it and it looks good to me, but it still needs a real reviewer approve.
>     >
>     > You actually make TDI a variable-length instruction.  Why not just emit
>     > "(uintptr_t)msg" no matter what?
>     > Particularly, "enum stop_msg_present = -0x8000" is correct but subtle.
> I'd
>     > like to learn from other reviewers.
>     >
>     > Thanks,
>     > --lx
>     >
>     >
>     > From: "Doerr, Martin" <martin.doerr at sap.com>
>     > Date: Tuesday, June 2, 2020 at 3:35 PM
>     > To: hotspot-runtime-dev <hotspot-runtime-dev at openjdk.java.net>,
>     > "Schmidt, Lutz" <lutz.schmidt at sap.com>, "Andrew Haley
>     > (aph at redhat.com)" <aph at redhat.com>, "Liu, Xin"
> <xxinliu at amazon.com>
>     > Subject: [EXTERNAL] RFR(S): 8246377: [PPC64] Further improvements for
>     > assembler stop function
>     >
>     > CAUTION: This email originated from outside of the organization. Do not
> click
>     > links or open attachments unless you can confirm the sender and know
> the
>     > content is safe.
>     >
>     > Hi,
>     >
>     > I’d like to have the improvements which we discussed for AArch64 also
> on
>     > PPC64 (+ a little more).
>     >
>     > Issue with details:
>     > https://bugs.openjdk.java.net/browse/JDK-8246377
>     >
>     > Webrev:
>     >
> http://cr.openjdk.java.net/~mdoerr/8246377_ppc64_improve_stop/webrev
>     > .00/
>     >
>     > Please review.
>     >
>     > Best regards,
>     > Martin
>     >
> 



More information about the hotspot-runtime-dev mailing list