RFR(L): More migration to the L-world

Karen Kinnear karen.kinnear at oracle.com
Tue Mar 6 23:06:19 UTC 2018


Thank you so much for the changes. Go ahead and push them.

Delighted that with these changes other can make their changes
Mr Simms - arrays
Harold - class file parser
Tobias, Roland - JIT changes

So many thanks for the original push and for this one done so quickly

Couple of minor comments/questions for future:
1. fieldInfo.hpp 
    comments 57-63 - later can you add FLATTENED bit to diagram
       - could you possibly rename to FIELDINFO_TAG_FLATTENED and define as 4 and use it the
         way TAG types are used today, i.e. |= TAG…
       - or rename it to FIELDINFO_FLATTENED_SHIFT and use it as you do today

2. cpCache.cpp
  line 142: is_flatten -> is_flattened
  and change set_field argument from is_flatten -> is_flattened
  maybe change cpCache.hpp line 230 argument from is_flatten -> is_flattened and change comment also



> On Mar 5, 2018, at 11:12 AM, Frederic Parain <frederic.parain at oracle.com> wrote:
> Please review the following patch:
> http://cr.openjdk.java.net/~fparain/field_flattening/webrev.00/index.html
> This patch was started as a fix for field flattening but it ended
> being an omnibus patch addressing the following issues:
>  - Fixed value types runtime tests accordingly to the new language
>    support in javac
>  - Fixed storage and propagation of the ACC_FLATTENABLE flag in JVM
>    meta-data
>  - Fixed value flattening for value fields with the ACC_FLATTENABLE
>    flag set
>  - Fixed uninitialized value for fields with ACC_FLATTENABLE flag set
>  - Fixed klass initialization sequence for ACC_FLATTENABLE support
>  - Implemented flattenable semantic for value fields with
>    ACC_FLATTENABLE flag set
>  - Added test to verify flattenable semantic
>  - Fixed a bug in the verifier (withfield)
> With this patch, most tests in the runtime/valhalla/valuetypes
> directory now pass in interpreted mode. Only 3 tests still fail,
> 2 because of the value array code that has not been migrated to
> the L-world, 1 because of the Bytecode API which has not been
> migrated either.
> Builds and tests (TEST=hotspot_valhalla_runtime) have been run on
> Linux/X64 and MacOSX/X64.
> Thank you,
> Fred

More information about the valhalla-dev mailing list