[External] : Re: RFC - Improving C2 Escape Analysis

Cesar Soares Lucas Divino.Cesar at microsoft.com
Wed Dec 1 21:03:15 UTC 2021


Thank you, Vladimir and Yang, for the feedback.

I just want to reiterate my plan of work on this in order to improve clarity. We're looking into a solution for allocation merges at the moment; we'll probably be looking into bringing some form of flow-sensitive EA later on after we get some progress with allocation merges. We don't have plans to implement Stadler/GRAAL EA algorithm in C2 at the moment.


Thanks,
Cesar

PS: Sorry for the delay... I'm in the middle of a leave.
________________________________
From: Vladimir Kozlov <vladimir.kozlov at oracle.com>
Sent: December 1, 2021 12:15 PM
To: Yi Yang <qingfeng.yy at alibaba-inc.com>; Cesar Soares Lucas <Divino.Cesar at microsoft.com>; Tobias Hartmann <tobias.hartmann at oracle.com>
Cc: John Rose <john.r.rose at oracle.com>; hotspot-dev at openjdk.java.net <hotspot-dev at openjdk.java.net>; Brian Stafford <Brian.Stafford at microsoft.com>; Martijn Verburg <Martijn.Verburg at microsoft.com>; Hohensee, Paul <hohensee at amazon.com>; Monica Beckwith <Monica.Beckwith at microsoft.com>; David Therkelsen <david.therkelsen at oracle.com>
Subject: Re: [External] : Re: RFC - Improving C2 Escape Analysis

I did not finish sentence:

 > We just need to know correct field's value after merge which current EA.

which current EA does not provide.

Thanks,
Vladimir K

On 12/1/21 11:35 AM, Vladimir Kozlov wrote:
> Thank you, Yang, for your input.
>
> We never planned "implement PEA for C2 according to what Graal compiler does". As you correctly pointed it would require
> a lot of changes incompatible with current C2.
>
> As I understand, Cesar and Co are also looking for a solution for merge cases first without drastically changing C2.
>
> I think we have enough info (or we can add more if needed) in C2 generated CFG we can consult to decide if some EA
> transformation/optimization are safe without drastically rewriting C2. We just need to know correct field's value after
> merge which current EA.
>
> We are not looking on the case you pointed yet. May be we can create something similar to SafePointScalarObject node for
> such purpose.
>
> Thanks,
> Vladimir K
>
> On 11/30/21 11:13 PM, Yi Yang wrote:
>> I read the discussion in this thread and aforementioned discussion of PEA by AWS, as well as related papers. I wonder
>> is it a good/feasible direction to implement PEA for C2 according to what Graal compiler does. Actually, I did some
>> exploration on this for personal interest, but I'm not sure if this direction is correct and if it is worth the time
>> to continue.
>>
>> Graal's escape analysis constructs CFG first, then traverses each basic block, each basic block has an associated
>> state set that records the alias and object state. It will clone the state for successor blocks at the control flow
>> split, and merge the state at control flow merge point.
>>
>> For example:
>> Object obj = new Object(); // Replace Allocation with VirtualAllocationNode
>>                                          // CFG split
>> if (...) {
>>   return obj;                       // Find alias, i.e VirtualAllocationNode, still virtual now
>> } else {
>>   staticField = obj;             // Materialize VirtualAllocationNode, i.e. real allocation
>>   return obj;                      // Proj of materialized VirtualAllocationNode
>> }
>> It's able to solve the most critical control flow problem mentioned in earlier discussion. But it brings some new
>> problems:
>>
>> 0. CFG is constructed during code generation while escape analysis happens during optimization. GCM can construct CFG
>> and schedule nodes into basic blocks, but PhaseCFG::schedule_late can not work without Matcher.
>>
>> 1. Essentially it moves the location of the object allocation. Graal deletes the original allocation node and replaces
>> it with VirtualAllocationNode. This node will become a real allocation where the object needs to be materialized. Can
>> an object(Allocation) be created on demand where it should materialize? I'm worried about this.
>>
>> 2. If we implement PEA for C2 according to what Graal does, should we completely rewrite subsequent optimizations?
>> That would definitely take significant effort as far as I see. PEA is only analysis, any subsequent optimizations such
>> as scalar replacement and lock elimination need to be reimplemented. Because the existing implementation relies on
>> AllocationNode::_non_escape, Graal's PEA uses a completely novel approach.
>>
>>
>> ------------------------------------------------------------------
>> From:Vladimir Kozlov <vladimir.kozlov at oracle.com>
>> Send Time:2021 Nov. 12 (Fri.) 04:38
>> To:Cesar Soares Lucas <Divino.Cesar at microsoft.com>; Tobias Hartmann <tobias.hartmann at oracle.com>
>> Cc:John Rose <john.r.rose at oracle.com>; hotspot-dev at openjdk.java.net <hotspot-dev at openjdk.java.net>; Brian Stafford
>> <Brian.Stafford at microsoft.com>; Martijn Verburg <Martijn.Verburg at microsoft.com>; "Hohensee, Paul"
>> <hohensee at amazon.com>; Monica Beckwith <Monica.Beckwith at microsoft.com>; David Therkelsen <david.therkelsen at oracle.com>
>> Subject:Re: [External] : Re: RFC - Improving C2 Escape Analysis
>>
>> Hi Cesar,
>>
>> On 11/11/21 11:24 AM, Cesar Soares Lucas wrote:
>>> Hi Vladimir,
>>>
>>> Thank you for the feedback and sorry for the delay in getting back to you!
>>>
>>>   > Yes, finding solution for allocation merges (or NULL) is a pain. I spent some
>>>   > time investigating possible solutions for it but "no cigar". May be we do
>>>   > indead need control flow analysis to resolve this.
>>>
>>> Can you elaborate a bit on the approaches you tried and why you didn't like
>>> them? By allocation merges do you mean nested objects like "obj1.obj2.x",
>>> right? Did you try solving both control-flow merge issues and also allocation
>>> merges?
>>
>> I mean control flow merges of allocations, like in your "Code Example 4".
>>
>> I tried to create separate unique instance IDs (in addition to Node::_idx) to use for merged allocations case (not NULL
>> case) which would look like one allocation after merge point with different paths for fields initialization. But
>> stumbles on some issues and did not proceed further. After some thinking I decided that it is wrong approach since it
>> still don't solve main merge issue of flow-insensitive analysis:
>>
>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-6726999&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=KFWvTg8NgtJZN%2FlGAJdJIGsRptJfUWG%2BSXpmgbkCAhI%3D&reserved=0
>> test/hotspot/jtreg/compiler/escapeAnalysis/Test6726999.java
>>
>> The issue with deep nested allocations `new A(new B( new C)))` will be addressed by Iterative EA I propose:
>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-8276455&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=Dwr4424EmCOQNq6%2BCCpuF7h3JZ929Jo8AeGyf5%2BQcjQ%3D&reserved=0
>>
>>>
>>>   > There are 2 test files with small methods for different EA cases I used to
>>>   > see how EA works:
>>>
>>> These examples are being very helpful, thank you again! >
>>>   > Yes, I think it would be good to have a prototype if you are comfortable to
>>>   > work with C2 code already.  I proposed small RFEs just for warmup ;)
>>>
>>> I talked with my colleagues and we decided to start the work by trying to fix
>>> the control/data-flow merge issues - *perhaps not for all cases, but at least
>>> for some of them*. Then, based on our experience with this and some
>>> benchmarking we'll decide if we really need flow-sensitive analysis and how to
>>> best approach that.
>>
>> Use Test6726999.java for that. It may need to be modified to verify correctness of results (currently it just print
>> result).
>>
>>>
>>> We'll definitely take a look at the RFEs as we move along! Implementing Stadler
>>> algorithm was just something that crossed my mind initially, it's very likely
>>> the last approach we'd try ... I don't want to bite more than I can chew..
>>
>> I may look on some RFE myself after I am done with 8276455. Please, let me know if you pick one to avoid duplicated work.
>>
>> Regards,
>> Vladimir K
>>
>>>
>>>
>>> Regards,
>>> Cesar
>>> ------------------------------------------------------------------------------------------------------------------------
>>> *From:* Vladimir Kozlov <vladimir.kozlov at oracle.com>
>>> *Sent:* October 29, 2021 5:27 PM
>>> *To:* Cesar Soares Lucas <Divino.Cesar at microsoft.com>; Tobias Hartmann <tobias.hartmann at oracle.com>; Ron Pressler
>>> <ron.pressler at oracle.com>
>>> *Cc:* John Rose <john.r.rose at oracle.com>; Mark Reinhold <mark.reinhold at oracle.com>; hotspot-dev at openjdk.java.net
>>> <hotspot-dev at openjdk.java.net>; Brian Stafford <Brian.Stafford at microsoft.com>; Martijn Verburg
>>> <Martijn.Verburg at microsoft.com>; Hohensee, Paul <hohensee at amazon.com>
>>> *Subject:* Re: [External] : Re: RFC - Improving C2 Escape Analysis
>>> On 10/29/21 4:50 PM, Cesar Soares Lucas wrote:
>>>> Hi Vladimir and Tobias,
>>>>
>>>>   >> Sure, here are four examples of EA and/or scalarization failing due to
>>>>   >> complicated control/data flow:
>>>>   >>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcr.openjdk.java.net%2F~thartmann%2FEA_examples&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=rHICrWRQCY8clUEGTnIwK%2Bsvv9SPUp9o6tDjzfq1L9E%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fcr.openjdk.java.net*2F*thartmann*2FEA_examples%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731032568*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3Dhz4ti9lgmQeGLX*2BZ3vmSngXHHUAX*2FAvtObgeu*2Fqz1DI*3D%26amp%3Breserved%3D0__%3BJSUlJX4lJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgiJmfBTxA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=tkqIoKGYoHLoH2atMPkyAIZ3ucy3Xa7WEquOAdxitZY%3D&reserved=0>
>>>
>>>>
>>>>   >> There are 2 test files with small methods for different EA cases I used to
>>>>   >> see how EA works:
>>>>   >>
>>>>   >> test/hotspot/jtreg/compiler/escapeAnalysis/Test6726999.java
>>>>   >> test/hotspot/jtreg/compiler/escapeAnalysis/Test6689060.java
>>>>
>>>> Thank you for the examples, Tobias/Vladimir. This is being very helpful.
>>>>
>>>>   >> Yes, finding solution for allocation merges (or NULL) is a pain. I spent
>>>>   >> some time investigating possible solutions for it but "no cigar". May be we
>>>>   >> do indead need control flow analysis to resolve this.
>>>>
>>>> By "need control flow analysis" you mean the flow-sensitive EA algorithm? My
>>>
>>> Yes.
>>>
>>> To clarify. I investigated solutions in current flow-insensitive EA.
>>>
>>>> first idea to handle these control/data-merge issues was to implement in C2 the
>>>> same algorithm used by GRAAL - i.e., the algorithm described in Stadler et. al
>>>> PEA paper. Do you think this is reasonable?
>>>
>>> Yes, I think it would be good to have a prototype if you are comfortable to work with C2 code already.
>>> I proposed small RFEs just for warmup ;)
>>>
>>>>
>>>>   >> I am currently looking on iterative EA. Do more EA rounds if we can
>>>>   >> eliminate more connected allocations. It was proposed by Vladimir Ivanov and
>>>>   >> I have working prototype.
>>>>
>>>> Cool! I'm curious, when do you plan to submit a Pull Request for this?
>>>
>>> I am investigating regressions in some benchmarks.
>>>
>>>>
>>>>   >> There is also suggestion from Amazon Java group about "C2 Partial Escape
>>>>   >> Analysis" which needs more discussion:
>>>>   >>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.openjdk.java.net%2Fpipermail%2Fhotspot-compiler-dev%2F2021-May%2F047486.html&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=f7ef8mHSQG0J0l8Yu47B5HVtPGqZSLL%2FUL67NKbZtdk%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fmail.openjdk.java.net*2Fpipermail*2Fhotspot-compiler-dev*2F2021-May*2F047486.html%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731032568*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DS65Ko1Jss1PRksoLs9w1Ci7lH7Cprikus4goFUXDdL4*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrghkjcrRWA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=v52N95naB2MoipKHnXVfz9jZda8egnRanZ7OOprnPJc%3D&reserved=0>
>>>
>>>>
>>>> I'd love to hear from them about their experience with these issues and if they
>>>> have any plans to work on this moving forward! I'll ping them on the thread
>>>> that you linked above.
>>>
>>> Yes, I would like them to participate too (CCing to Paul). They sent proposal almost 6 months ago and we did not hear
>>> any additional information after Vladimir Ivanov replied.
>>>
>>> Regards,
>>> Vladimir K
>>>
>>>>
>>>>
>>>> Regards,
>>>> Cesar
>>>> ------------------------------------------------------------------------------------------------------------------------
>>>>
>>>> *From:* Vladimir Kozlov <vladimir.kozlov at oracle.com>
>>>> *Sent:* October 27, 2021 10:26 AM
>>>> *To:* Tobias Hartmann <tobias.hartmann at oracle.com>; Cesar Soares Lucas <Divino.Cesar at microsoft.com>; Ron Pressler
>>>> <ron.pressler at oracle.com>
>>>> *Cc:* John Rose <john.r.rose at oracle.com>; Mark Reinhold <mark.reinhold at oracle.com>; hotspot-dev at openjdk.java.net
>>>> <hotspot-dev at openjdk.java.net>; Brian Stafford <Brian.Stafford at microsoft.com>; Martijn Verburg
>>>> <Martijn.Verburg at microsoft.com>
>>>> *Subject:* Re: [External] : Re: RFC - Improving C2 Escape Analysis
>>>> First. Thank you, Cesar, for collecting data about C2 EA shortcomings.
>>>>
>>>> I agree with cases Tobias pointed as possible starting points to improve EA.
>>>>
>>>> Yes, finding solution for allocation merges (or NULL) is a pain. I spent some time investigating possible solutions for
>>>> it but "no cigar". May be we do indead need control flow analysis to resolve this.
>>>>
>>>> I looked through JBS and found few issues which are not required to write new EA:
>>>>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-7149991&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=Kyq1%2F4qtsI6uxsuC%2Fc1DVIWbC0zyUt958zXHKDdpKCs%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-7149991%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731032568*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3Dw1OPBcpSVInagqRbMJ9*2BB0XYxxm84DWKGltPT5Btjss*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgheYcbU4Q%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=pHQN%2BJ3pVi6k113%2FQ6xAOoAGkF%2BPtU3MDkotIwZgdao%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-7149991%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DQrR7*2BGxXon4ToV6x3PhtQzZGl5tF7f1RUDbEi2AMTqA*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx0nlxftOg%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=595foCEOndTwEBk8RGQszLVdC6eikVwLEAoIoehxWCs%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-7149991*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DQrR7*2BGxXon4ToV6x3PhtQzZGl5tF7f1RUDbEi2AMTqA*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx0nlxftOg*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731032568*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DZ*2B99B925iq8y*2BCcl*2Bs3zsocygNtEpAl*2F22xgX5CJcFg*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSoqJSUlJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgiwzRBBlA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=98bCMi7e%2FrgyM%2FCsFJ5DmU7QUt%2BjgLCt3XeOVpOVLE8%3D&reserved=0>>
>>>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-8059378&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=XyVqpSZij5uAhbA80ceY37Iuy%2FpolRghPB2rP%2Fvh2fE%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8059378%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DiFo*2Farh7mS777oQl705t5pznFZttfMGqFO6*2BQpr71uY*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4Zrgjj331Sew%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=0Py97v5M%2Ft%2FvkWn23l69uA7ULwIdZ5GBe%2BBuL78OEoM%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8059378%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DrsMHgOyTDYF*2B*2Ba38jGeown5TcZfIEDucAWI5QuAaTd4*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx3fmFwUkA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=jv44FGBl7e5nbUm3v2JC7Sxe3%2FqEoXxOWICF4ZflPBo%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8059378*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DrsMHgOyTDYF*2B*2Ba38jGeown5TcZfIEDucAWI5QuAaTd4*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx3fmFwUkA*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3D30G1N2vm*2BTNOgRtDesl3ssesCGuvx2RUqyw6tns*2FDi0*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSoqKiUlJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgjBgIowbA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=qZcemeswxXcHnvRYVA7zWkvzKQAOrcWF1bXb2ggwah8%3D&reserved=0>>
>>>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-8073358&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=gn%2Bcj8cMxrUJtGUuF7Vj63YQsFH3gDgeT9ld6f4K3m0%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8073358%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DwkSutLxq2*2B*2FqUsUViubbNO97gQQ9I91*2FarNQqQxIFC8*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4Zrgh-8TmvrA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=drUqkwYFULTN06YDeUigmfVBX7CNje2ePB3AgYpuRvo%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8073358%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DCypHNEd5B5EymTYMnF6jf30LspY6sBqXoz1sypE2tSg*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2VVMtprg%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=%2BIozqsfTREcKoGJDfBIXiApJ4IszDsXKze%2FunS%2BwJ1E%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8073358*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DCypHNEd5B5EymTYMnF6jf30LspY6sBqXoz1sypE2tSg*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2VVMtprg*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DqcUOOBHFXNmPXPvG66KDzdlFQvTZ453fdsUliva4W8A*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSolJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrghnfIIXrA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=mkIsmyY0ctfTgBSnk57Pq5wqDt%2F%2FofFbbgR7e9eeUiY%3D&reserved=0>>
>>>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-8155769&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=hF1cSOvyaYdSXXEkydxDmC9BHzimxHw8sgIC0%2F9oOgA%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8155769%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DoCMhOgnX0FjV4j*2Bymy7z8Op6IFfd8z71AZ*2BZlqbYWSU*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrggugJT1_A%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=3pn1BbFqwUt06W%2FOe2hSVOln7pC35JvyXLl4PkLwCjI%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8155769%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DBE170*2BZrn2c2*2FDLcijZsol25q2zY5X5idHXXwjCn7ug*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx3hRRGkQg%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=o8e9qMTnrFm1lTJRcEj1sdvfAUMqWg0OM4WKJd4sjls%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8155769*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DBE170*2BZrn2c2*2FDLcijZsol25q2zY5X5idHXXwjCn7ug*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx3hRRGkQg*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DIrx*2Bc6pTAZmB6ipB2IF2ma*2BVE7t0mXK*2Fl7*2BiwhPntPA*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSoqKiUlJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgiWf_hS0w%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=M9pPBjScUbKXLKEyuBfPE8%2FfA573oniiJpRxcAXjbDY%3D&reserved=0>>
>>>
>>>>
>>>> Tobias also has fix prototype for next bug which was not fixed yet:
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-8236493&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=PE05yQySp9KYzzs9%2F4POVdwhh4%2FLJARyha1o3%2BLTljg%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8236493%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DKCLrH3*2FnNhLANzyGrbCLILwuDUfql5h3Lx0REVsol*2F0*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4Zrgjz1pKoaQ%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=WhOjelHixlUA%2FFIdIst194JljnBl9gDmVxad7NwX9tI%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8236493%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DfqaQ7zhAHGdsnUcw7wjA6c4XX96Aaa3acTIzc6*2FJXmY*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2urgFigw%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865475983092%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=VWrSgLa3%2FM9aKIAQNIMGowoX132L4CD9qJwFKyXL9HI%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-8236493*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262611242*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DfqaQ7zhAHGdsnUcw7wjA6c4XX96Aaa3acTIzc6*2FJXmY*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2urgFigw*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DTEd4GjLj1FC*2BwwBaix*2B0JwWoSX7ch0nCsVmsI4VDc*2B4*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSoqJSUlJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrghE9H_vWw%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=hYJNltJEIlXAf3t5nOe%2F2NXc94G6XVmGXsmaBGVu8bk%3D&reserved=0>>
>>>
>>>>
>>>> Ther are 2 test files with small methods for different EA cases I used to see how EA works:
>>>>
>>>> test/hotspot/jtreg/compiler/escapeAnalysis/Test6726999.java
>>>> test/hotspot/jtreg/compiler/escapeAnalysis/Test6689060.java
>>>>
>>>> You can start looking on above RFE/bug or run these tests and see why scalarization failed for some cases. Except for
>>>> known merge issue:
>>>>
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.openjdk.java.net%2Fbrowse%2FJDK-6853701&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=x1xAEXYyCuLP3fNGrCW7VOsDchFTOo2zp31teVn1FUY%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-6853701%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DvYIhnXEGGw*2FLx83NKcCAu0Vdt382TngtfpQ*2BCDBq7cU*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgjXHRgx9A%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=ejq36xzD9Dhm%2FXd9VYh5poBhfLDKa%2BDT34qzvgjnGeY%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-6853701%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DF*2Bz1CFuCK6ZgXi5*2FWOcOgBWuXKeap0oZJh4873QKRgk*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx1olloG2Q%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=6PIpqB%2FTGhQx3aw4LM3ipOXbF9S%2BxKGad%2BRRmuv2viY%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fbugs.openjdk.java.net*2Fbrowse*2FJDK-6853701*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DF*2Bz1CFuCK6ZgXi5*2FWOcOgBWuXKeap0oZJh4873QKRgk*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx1olloG2Q*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731042513*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3D1G7*2FG24Dpl23jat0F6EMv7EU8ezR2RoviINRcopQwpw*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiUlJSoqKioqKioqKioqKiUlJSoqKiUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4Zrgg10-OyiA%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=CwZHx3ajwE1BeOyMgAGtHxsCtI9CmiMi8QvG6aZWlwk%3D&reserved=0>>
>>>
>>>>
>>>> I am currently looking on iterative EA. Do more EA rounds if we can eliminate more connected allocations. It was
>>>> proposed by Vladimir Ivanov and I have working prototype.
>>>>
>>>> There is also suggestin from Amazon Java group about "C2 Partial Escape Analysis" which needs more discsussion:
>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.openjdk.java.net%2Fpipermail%2Fhotspot-compiler-dev%2F2021-May%2F047486.html&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=k7UjGtrhLYV94rrZ8TcyJXgwRjdfpEObSOaTTPgusoU%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fmail.openjdk.java.net*2Fpipermail*2Fhotspot-compiler-dev*2F2021-May*2F047486.html%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731052481*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DVUDTiLcJzwQkcUHQzLk7vcOIjmqSKQt8glKSrTHRX6w*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgihwSqtAQ%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=edzHK0lM%2BVGaQfe0I3EbHQmyFEHWZkqkFNv4y1UtmuQ%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fmail.openjdk.java.net*2Fpipermail*2Fhotspot-compiler-dev*2F2021-May*2F047486.html%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DQFszHSDnPkYLBkjqzNkmU92P6VlBFSok1mOku5sNudw*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2tIPFENw%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=CtVLZUj3SyexKCRIhqYrVizjxSFE66svyVOPA93pRoc%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fmail.openjdk.java.net*2Fpipermail*2Fhotspot-compiler-dev*2F2021-May*2F047486.html*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DQFszHSDnPkYLBkjqzNkmU92P6VlBFSok1mOku5sNudw*3D*26amp*3Breserved*3D0__*3BJSUlJSUlJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx2tIPFENw*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731052481*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DeEcFdBEBJb*2Bg*2F2NYA9mp3*2BaBRhshP8Nk9R7lCIrpc7A*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKioqJSUlKioqKioqKioqKioqJSUlKiUlJSUlJSUlJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrggBRWcARQ%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=rbLrJSQgh9nmHiJFTcLPRHjHFKH385Y4cBMpH%2BjHsL4%3D&reserved=0>>
>>>
>>>>
>>>> Thanks,
>>>> Vladimir K
>>>>
>>>> On 10/27/21 3:04 AM, Tobias Hartmann wrote:
>>>>> Hi Cesar,
>>>>>
>>>>> On 27.10.21 08:20, Cesar Soares Lucas wrote:
>>>>>> Right. I was suspecting this to be the most critical issue indeed. However, I
>>>>>> didn't know there was a case where "... the object does not escape on any paths
>>>>>> but control flow is too complicated for EA to prove that." Is this an issue
>>>>>> tracked in JBS or perhaps you can show me an example where this happens?
>>>>>
>>>>> Sure, here are four examples of EA and/or scalarization failing due to complicated control/data
>>>>> flow:
>>>>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcr.openjdk.java.net%2F~thartmann%2FEA_examples&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=FSgQ5PPx%2Fow4P7siqqP9Zwe4uQ0K9QfGKFtx2GCreKA%3D&reserved=0
>>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fcr.openjdk.java.net*2F*thartmann*2FEA_examples%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731052481*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3Djv5lNO928mVyKHHlZIKyQ2eZGfu4W9ADV*2BlyX2IAvlk*3D%26amp%3Breserved%3D0__%3BJSUlJX4lJSUlJSUlJSUlJSUlJSU!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4Zrgjd4sxUaQ%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=sX1YPBRzWyt1VBwJ%2BCV3fSeSQFlsPmUz6SWBVHu5uoQ%3D&reserved=0>
>>>
>>>
>>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Fcr.openjdk.java.net*2F*thartmann*2FEA_examples%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3DYbaF4T0zt9dle23nulvUWWLktuTvaWFWENQHD7Q13CE*3D%26amp%3Breserved%3D0__%3BJSUlJX4lJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx03YEOG3w%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=EagIo2qhC0%2BBB%2B%2BA%2BqGdzoTMfaw2EZinKAtDdRQMJiE%3D&reserved=0
>>>>
>>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2F*2Fnam06.safelinks.protection.outlook.com*2F*3Furl*3Dhttps*3A*2F*2Fcr.openjdk.java.net*2F*thartmann*2FEA_examples*26amp*3Bdata*3D04*7C01*7CDivino.Cesar*40microsoft.com*7C63920cb1798f48c3487508d9996efd44*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637709524262621193*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000*26amp*3Bsdata*3DYbaF4T0zt9dle23nulvUWWLktuTvaWFWENQHD7Q13CE*3D*26amp*3Breserved*3D0__*3BJSUlJX4lJSUlJSUlJSUlJSUlJQ!!ACWV5N9M2RV99hQ!Y9n_pFC3a0ZG4KrWKJhrn9mlogJtuWmPqPlYgyNTBHWD2o2yhpaz9QpDsRbFhx03YEOG3w*24%26amp%3Bdata%3D04*7C01*7CDivino.Cesar*40microsoft.com*7C027f2da3f2e14f914c2608d99b3c195e*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637711504731052481*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000%26amp%3Bsdata%3D1eI2my4BwLVxIqImsawvnY1sAHVV2Jth2lnMBmMLwFI*3D%26amp%3Breserved%3D0__%3BJSUlJSUlJSUlJSUqKioqKiolJSUqKioqKioqKioqKiolJSUqJSUlJSUlJSUlJSUlJSUlJSUl!!ACWV5N9M2RV99hQ!a2yltdzJejKSFAqSoN7N5X0yqmRW0Nb7yS2_bBOlp6rrf8axPBXgR9arXi4ZrgiSyzgF4A%24&data=04%7C01%7CDivino.Cesar%40microsoft.com%7C18e36ce0df5c41d108d108d9b5075a2c%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637739865476033078%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=c7k7dzWFAZGAQkam6dcqlb3ODIBwTjUE1Y4Rr5YZoME%3D&reserved=0>>
>>>
>>>>>
>>>>> All examples would completely fold with inline types (Valhalla).
>>>>>
>>>>> I'm not sure if these issues are tracked by JBS issues but there's most likely an overlap with some
>>>>> of the issues you already described.
>>>>>
>>>>> Best regards,
>>>>> Tobias
>>>>>


More information about the hotspot-dev mailing list