RFR 8220701 [lworld] Remove ValueArrayFlatten command line flag

Ioi Lam ioi.lam at oracle.com
Mon Mar 18 21:34:45 UTC 2019


https://bugs.openjdk.java.net/browse/JDK-8220701
http://cr.openjdk.java.net/~iklam/valhalla/8220701-remove-ValueArrayFlatten-flag.v01/

In the test cases, I've replaced all occurrence of

    -XX:+ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=-1
    -XX:-ValueArrayFlatten -> -XX:ValueArrayElemMaxFlatSize=0

In the VM code, I just replaced ValueArrayFlatten with an #ifdef for now,

     #define ValueArrayFlatten (EnableValhalla && 
(ValueArrayElemMaxFlatSize != 0))

... because the affected VM code is likely to be changed soon by [1], or
the follow-up fixes in C1/C2 to support [1].

Also, some of the compiler tests probably need to be updated after [1],
as C1 (and I think C2 as well) can't really distinguish between 3 types of
arrays (pojo, non-nullable/non-flattened, non-nullable/flattened).

Testing: Passed all tests under

     test/hotspot/jtreg/compiler/valhalla
     test/hotspot/jtreg/runtime/valhalla
     test/jdk/valhalla


Thanks
- Ioi

---------

[1] https://bugs.openjdk.java.net/browse/JDK-8220790
     [lworld][lw2] improve support for value arrays



More information about the valhalla-dev mailing list