[10] RFR: 8016470: AllocatePrefetchDistance is not changed by command line

Rahul Raghavan rahul.v.raghavan at oracle.com
Tue Jun 6 12:27:18 UTC 2017


Hi,

Please review the following fix proposal:

<webrev.00> - http://cr.openjdk.java.net/~rraghavan/8016470/webrev.00/
    src/cpu/arm/vm/vm_version_arm_32.cpp    - 3 lines changed: 2 ins; 0 del; 1 mod 
    src/cpu/arm/vm/vm_version_arm_64.cpp    - 3 lines changed: 2 ins; 0 del; 1 mod 
    src/cpu/x86/vm/vm_version_x86.cpp             - 16 lines changed: 11 ins; 0 del; 5 mod 
    src/cpu/x86/vm/vm_version_x86.hpp            - 10 lines changed: 9 ins; 0 del; 1 mod


Reproduced the reported issue - Some values not changed with command line flags.
<jbs> - https://bugs.openjdk.java.net/browse/JDK-8016470

Checked all the related command line flags, values setting for various targets.
The proposed fix is to add required FLAG_IS_DEFAULT() checks for related flags 
before modifying with any default platform dependent values,
to avoid the overwriting of command line values passed.

Confirmed changes fix reported issue.
. e.g. with fix :  $ java -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:AllocateInstancePrefetchLines=6 -XX:AllocatePrefetchDistance=256 -XX:AllocatePrefetchInstr=1
 -XX:AllocatePrefetchLines=2 -XX:AllocatePrefetchStepSize=32 -XX:AllocatePrefetchStyle=3 -XX:+PrintFlagsFinal -version 2>&1 | grep Allocate
       intx AllocateInstancePrefetchLines            = 6                                        {product} {command line}
       intx AllocatePrefetchDistance                 = 256                                      {product} {command line}
       intx AllocatePrefetchInstr                    = 1                                        {product} {command line}
       intx AllocatePrefetchLines                    = 2                                        {product} {command line}
       intx AllocatePrefetchStepSize                 = 32                                       {product} {command line}
       intx AllocatePrefetchStyle                    = 3                                        {product} {command line}


Thanks,
Rahul


More information about the hotspot-compiler-dev mailing list