RFR(M) 8056964: JDK-8055286 changes are incomplete.

Vladimir Kozlov vladimir.kozlov at oracle.com
Sat Aug 30 02:32:17 UTC 2014


https://bugs.openjdk.java.net/browse/JDK-8056964
http://cr.openjdk.java.net/~kvn/8056964/webrev/

I want to use compilerOracle 'option' ccstr type for 8055494 testing:

-XX:CompileCommand=option,java.math.BigInteger::multiply,ccstr,DisableIntrinsic,_multiplyToLen

So it is blocker for 8055494.

I added ccstr and ccstrlist types to compilerOracle 'option' command. 
Internally ccstr and ccstrlist are the same: const char*. As result 
templates are declared only for ccstr.
Fixed 'bool' option to accept 'false' value.
Modified the output for options (added type).
Added missing accessor methods in Compile and ciMethod classes.

The output:

java 
-XX:CompileCommand=option,Test::test,ccstrlist,MyListOption,_foo,_bar 
-XX:CompileCommand=option,Test::test,ccstr,MyStrOption,_foo 
-XX:CompileCommand=option,Test::test,bool,MyBoolOption,false 
-XX:CompileCommand=option,Test::test,intx,MyIntxOption,-1 
-XX:CompileCommand=option,Test::test,uintx,MyUintxOption,1 
-XX:CompileCommand=option,Test::test,MyFlag -version

CompilerOracle: option Test.test const char* MyListOption = '_foo _bar'
CompilerOracle: option Test.test const char* MyStrOption = '_foo'
CompilerOracle: option Test.test bool MyBoolOption = false
CompilerOracle: option Test.test intx MyIntxOption = -1
CompilerOracle: option Test.test uintx MyUintxOption = 1
CompilerOracle: option Test.test bool MyFlag = true
java version "1.9.0-ea-fastdebug"

Thanks,
Vladimir


More information about the hotspot-compiler-dev mailing list