[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-hotspot-dev
Subject:    Re: Collaboration proposal: Draft JEP MacOS/AArch64 Port
From:       Anton Kozlov <akozlov () azul ! com>
Date:       2020-08-27 8:17:10
Message-ID: 74fb31b5-22fe-41eb-d04e-50b288b23eb6 () azul ! com
[Download RAW message or body]

Hi!

It seems we are in a similar state.

Same problem with native_wrapper, e.g subsequent byte arguments are adjacent on \
stack[1]. So far we bailout when a-smaller-than-word-argument is allocated on stack \
(and use interpreted version). The problem is VMReg for stack slots does not able to \
encode stack places with bytes granularity. I think it is fine to allocate same (or \
none) stack VMReg for small arguments, but we have not tried that yet.

I think we've come up with the same or similar systematic approaches. I'm not ready \
to say I have something that is correct by construction for W^X, but I feel I'm \
close. A few latest iterations mostly works but a few edge cases makes me re-think \
about invariants. 

Thanks,
Anton

[1] https://developer.apple.com/library/archive/documentation/Xcode/Conceptual/iPhoneO \
SABIReference/Articles/ARM64FunctionCallingConventions.html#//apple_ref/doc/uid/TP40013702-SW4


On 26.08.2020 23:39, Ludovic Henry wrote:
> Hi Anton,
> 
> As Monica is on vacation, I just wanted to give a quick update on where we are \
> standing. 
> As of today, we have most of hotspot:tier1 and jdk:tier1 passing. The main \
> remaining issues are around calling convention from the compiler into native (we \
> already fixed it from the interpreter) and deprecated APIs in 11.0.0 (used in AWT, \
> for example). We are not running into any major issue with W^X, and we have come up \
> with a systematic approach that requires few modifications. On the deprecated APIs, \
> we can easily dismiss the warnings with -Wno-deprecated-declarations, but that is \
> not a long term fix. 
> We'd love to have a chat with you to figure out how you would like to share \
> learnings and join efforts. I'll contact you offline with some time proposals. 
> Thank you,
> Ludovic
> 
> -----Original Message-----
> From: hotspot-dev <hotspot-dev-retn@openjdk.java.net> On Behalf Of Anton Kozlov
> Sent: Thursday, August 13, 2020 6:04 AM
> To: Monica Beckwith <Monica.Beckwith@microsoft.com>
> Cc: aarch64-port-dev@openjdk.java.net; hotspot-dev Source Developers \
>                 <hotspot-dev@openjdk.java.net>
> Subject: Re: Collaboration proposal: Draft JEP MacOS/AArch64 Port
> 
> Hello Monica,
> 
> Thank you for your proposal. It was a bit unexpected :) We would be happy to
> collaborate!
> 
> Our mac/aarch64 port is in the R&D phase. At some point, maybe we (OpenJDK
> community) will need a project or repo for integration. But having win/aarch64
> integrated, it may happen that mac/aarch64 support will be just a series of
> considerably isolated changes. An example is "JDK-8250876: Fix issues with
> cross-compile on macos" [1]. If all changes will be such self-containing, they
> may be reviewed and integrated one-by-one. Probably we won't need a project.
> 
> I think this work is blocked by the JEP for the new platform support. I'll 
> start a discussion email thread for that really soon.
> 
> I hope we would be able to collaborate in all of the areas. I expect us to get
> soon to the point when we can start reviewing changes made for win/aarch64 and
> evaluate how do they fit mac/aarch64.
> 
> Thanks,
> Anton
> 
> [1] https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.j \
> ava.net%2Fbrowse%2FJDK-8250876&amp;data=02%7C01%7Cluhenry%40microsoft.com%7C4623df4c \
> 26b74b3fc9fc08d83f8a4b37%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637329210503526908&amp;sdata=etFFyw9zye9g5gGgRY%2BB%2FCsspLo0TZ8Ct0dTvB0aa98%3D&amp;reserved=0
>  
> On 11.08.2020 21:15, Monica Beckwith wrote:
> > Hello everyone, 
> > 
> > It gives me immense pleasure to see the draft JEP for 'MacOS/AArch64 Port' [1]. \
> > At Microsoft, we are in the process of expanding our CI infrastructure by adding \
> > Apple DevKits [2]. We are entirely in support of you and your team, @Anton \
> > Kozlov. You all bring your immense knowledge from the AArch32 port, and we \
> > welcome you and would like to extend our collaboration on the MacOS port. More \
> > specifically, we would like to work with you on the -   
> > . Implementation (low-level code additions, shared code modifications and \
> >                 maintenance, adhering to HotSpot coding style/conventions [3], \
> >                 etc.)  
> > . Testing (all regression, functional, integration and performance tests) 
> > . Integration to jdk/jdk (tip) 
> > 
> > Since the MacOS port work depends on the Windows port modifications, I propose a \
> > collaboration (sub-)Project [4] repo where we can jointly work in the open.  
> > If it is OK with you and your team, next week, I can propose the creation of a \
> > new (sub-)Project for 'jdk-mac' and send it out to \
> > mailto:discuss@openjdk.java.net and mailto:aarch64-port-dev@openjdk.java.net. \
> > Once we have a sponsor, we can send the info out on \
> > mailto:announce@openjdk.java.net.  
> > We can work on the details of these offline. Please let me know if you have \
> > already made traction on the (sub-)Project front, and we can jump in and help \
> > wherever you are.  
> > This is a wonderful opportunity for OpenJDK, and the team here at Microsoft is \
> > excited about the prospects, and we are looking forward to working with your \
> > team.  
> > Thanks, 
> > Monica
> > 
> > [1] https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fopenjdk.java. \
> > net%2Fjeps%2F8251280&amp;data=02%7C01%7Cluhenry%40microsoft.com%7C4623df4c26b74b3f \
> > c9fc08d83f8a4b37%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637329210503526908&amp;sdata=oCZSZXoU9sDUpfyr4GXzxhrU0YrMFjAzTLgbcD1BNtc%3D&amp;reserved=0
> >  [2] https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdeveloper.a \
> > pple.com%2Fprograms%2Funiversal%2F&amp;data=02%7C01%7Cluhenry%40microsoft.com%7C46 \
> > 23df4c26b74b3fc9fc08d83f8a4b37%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637329 \
> > 210503526908&amp;sdata=Taczc6541YW4mVDkkCzg4XLprCJMOgSi6I4oxtWhJW4%3D&amp;reserved=0
> >  [3] https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwiki.openjd \
> > k.java.net%2Fdisplay%2FHotSpot%2FStyleGuide&amp;data=02%7C01%7Cluhenry%40microsoft \
> > .com%7C4623df4c26b74b3fc9fc08d83f8a4b37%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0 \
> > %7C637329210503526908&amp;sdata=WLKmlWbb4oPkA7hN4Vz%2FE%2Ba6u52l7enipOvU0Gb3IgA%3D&amp;reserved=0
> >  [4] https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fopenjdk.java \
> > .net%2Fprojects%2F%23new-project&amp;data=02%7C01%7Cluhenry%40microsoft.com%7C4623 \
> > df4c26b74b3fc9fc08d83f8a4b37%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C63732921 \
> > 0503526908&amp;sdata=aW1A%2BifN9I0fIcyHj7vGZFgvOI83h5t2ErlAu3u4z6M%3D&amp;reserved=0
> >  


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic