# HG changeset patch # User Christos Kotselidis # Date 1371585175 -7200 # Node ID d61ad4aff3a85caf52e18bba5c1aaca281650074 # Parent 1c77d07322332683a2861c961b7f59fb713a4385# Parent dcc1994e523eefadd2259e54b56e2ba478b4368d Merge diff -r dcc1994e523e -r d61ad4aff3a8 graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java --- a/graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Tue Jun 18 18:35:18 2013 +0200 +++ b/graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Tue Jun 18 21:52:55 2013 +0200 @@ -669,6 +669,8 @@ // Otherwise the narrow heap base, which resides always in register 12, is subtracted // followed by right shift. masm.testq(scratchRegister, scratchRegister); + // If the stored reference is null, move the heap to scratch + // register and then calculate the compressed oop value. masm.cmovq(ConditionFlag.Equal, scratchRegister, AMD64.r12); masm.subq(scratchRegister, AMD64.r12); masm.shrq(scratchRegister, logMinObjAlignment); diff -r dcc1994e523e -r d61ad4aff3a8 src/share/vm/runtime/arguments.cpp --- a/src/share/vm/runtime/arguments.cpp Tue Jun 18 18:35:18 2013 +0200 +++ b/src/share/vm/runtime/arguments.cpp Tue Jun 18 21:52:55 2013 +0200 @@ -2097,19 +2097,6 @@ #endif } #ifdef GRAAL - if (UseCompressedOops) { - if (IgnoreUnrecognizedVMOptions) { - warning("UseCompressedOops is disabled, because it is not supported by Graal"); - FLAG_SET_CMDLINE(bool, UseCompressedOops, false); - } else { - status = true; - FLAG_SET_CMDLINE(bool, UseCompressedOops, true); - } - } else { - // This prevents the flag being set to true by set_ergonomics_flags() - FLAG_SET_CMDLINE(bool, UseCompressedOops, false); - } - if (UseCompressedKlassPointers) { if (IgnoreUnrecognizedVMOptions) { warning("UseCompressedKlassPointers is disabled, because it is not supported by Graal");