hg: valhalla/valhalla: [lworld] Withdraw support for the __Flattenable and __NotFlattened field modifiers.

Karen Kinnear karen.kinnear at oracle.com
Wed Jun 27 16:03:22 UTC 2018


Many thanks Srikanth - I had missed that you already pushed this. Very much appreciated.

thanks,
Karen

> On Jun 27, 2018, at 11:58 AM, Srikanth <srikanth.adayapalam at oracle.com> wrote:
> 
> Hello Karen,
> 
> Yes, I believe both 1 and 2 below are taken care of and any behavior contrary to that would be a bug. There is no known bug ATM in this space.
> 
> Srikanth
> 
> On Wednesday 27 June 2018 07:03 PM, Karen Kinnear wrote:
>> To be really really clear what we are asking for for LW1:
>> 
>> 1. Modifiers: __Flattenable, __NotFlattened would be accepted only under -XDAllowFlattenabilityModifiers flag
>> Many of the existing tests will need to be modified to add this flag.
>> 
>> 2. ACC_FLATTENABLE
>> For LW1, by default all instance fields containing value types would be marked as ACC_FLATTENABLE in the classfile.
>> Static fields would not. This continues to work even without the -XDAllowFlattenabilityModifiers flag.
>> Please make sure this is true - the patch you sent e.g. ClassWriter looks like that might now be true.
>> 
>> We won’t make LW1 if we change the classfile at this point.
>> 
>> So for the LW1 timeframe, the consensus is NOT to move away from ACC_FLATTENABLE.
>> 
>> Apologies for the confusion,
>> Karen
>> 
>> 
>> 
>>> On Jun 26, 2018, at 11:40 PM, Srikanth <srikanth.adayapalam at oracle.com> wrote:
>>> 
>>> I am working on it, will push soon.
>>> 
>>> Srikanth
>>> 
>>> On Tuesday 26 June 2018 09:17 PM, Karen Kinnear wrote:
>>>> Srikanth, Tobias,
>>>> 
>>>> Yes please to push this patch to move these modifiers under the experimental flag. this is a much better approach.
>>>> 
>>>> LW1 is a really tight deadline right now and we don’t want to cause extra work.
>>>> My apologies for missing the implications.
>>>> 
>>>> thank you both,
>>>> Karen
>>>> 
>>>>> On Jun 26, 2018, at 7:23 AM, Srikanth <srikanth.adayapalam at oracle.com> wrote:
>>>>> 
>>>>> 
>>>>> The attached patch would cause the flattenability modifiers to be accepted with their erstwhile syntax and semantics when javac is invoked with -XDallowFlattenabilityModifiers
>>>>> 
>>>>> I'll wait to hear from Karen and push/discard accordingly.
>>>>> 
>>>>> (I am likely away Thursday/Friday, I will be available on Wednesday. Posting a patch here, so if it is required in my absence it can be availed. It passes all langtools tests)
>>>>> 
>>>>> Thanks!
>>>>> Srikanth
>>>>> 
>>>>> On Tuesday 26 June 2018 03:38 PM, Srikanth wrote:
>>>>>> On Tuesday 26 June 2018 03:32 PM, Tobias Hartmann wrote:
>>>>>>> Hi Srikanth,
>>>>>>> 
>>>>>>> On 26.06.2018 11:37, Srikanth wrote:
>>>>>>>> I did have an express go from Karen to "nuke" these source level modifiers before proceeding. But in
>>>>>>>> light of what you say, I'll take a look and see what is involved in pushing these under an option
>>>>>>>> instead.
>>>>>>> Thanks for looking into it but we should probably wait for Karen to comment on that. I guess I
>>>>>>> missed the discussion/decision of fully removing these modifiers (I thought we just don't want to
>>>>>>> support them for LW1).
>>>>>> Sounds good to me. I'll keep a patch ready in any case and after hearing from Karen decide to push or discard.
>>>>>> 
>>>>>> I believe the consensus in the VM is to move away fromACC_FLATTENABLE on fields to using the ValueTypes attribute.
>>>>>> 
>>>>>> Your concern below about the code rot is valid.
>>>>>> 
>>>>>> Srikanth
>>>>>>>> Even with that many of the tests would need "massaging" but I guess it won't shut you out from
>>>>>>>> retaining the support for non-flattened value type fields.
>>>>>>> Yes, I'm fine with modifying the tests, I'm just concerned that without testing the implementation
>>>>>>> of non-flattenable fields in the JVM, the code will start to rot very soon.
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> Tobias
>>>>> <flat.txt>
> 



More information about the valhalla-dev mailing list