Mercurial > hg > truffle
changeset 10414:72eafe3a1c34
Add comments in Compressed Oops
author | Christos Kotselidis <christos.kotselidis@oracle.com> |
---|---|
date | Tue, 18 Jun 2013 19:30:22 +0200 |
parents | 665e95c28965 |
children | 1c77d0732233 |
files | graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java |
diffstat | 1 files changed, 2 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Tue Jun 18 16:39:17 2013 +0200 +++ b/graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Tue Jun 18 19:30:22 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);