Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/assembler_x86.cpp @ 1690:36519c19beeb
6975027: use of movptr to set length of array
Reviewed-by: kvn, iveresov
author | never |
---|---|
date | Tue, 10 Aug 2010 12:15:10 -0700 |
parents | 66c5dadb4d61 |
children | d6f45b55c972 |
comparison
equal
deleted
inserted
replaced
1689:f4f596978298 | 1690:36519c19beeb |
---|---|
7149 movptr(Address(top, oopDesc::mark_offset_in_bytes()), (intptr_t)markOopDesc::prototype()->copy_set_hash(0x2)); | 7149 movptr(Address(top, oopDesc::mark_offset_in_bytes()), (intptr_t)markOopDesc::prototype()->copy_set_hash(0x2)); |
7150 // set the length to the remaining space | 7150 // set the length to the remaining space |
7151 subptr(t1, typeArrayOopDesc::header_size(T_INT)); | 7151 subptr(t1, typeArrayOopDesc::header_size(T_INT)); |
7152 addptr(t1, (int32_t)ThreadLocalAllocBuffer::alignment_reserve()); | 7152 addptr(t1, (int32_t)ThreadLocalAllocBuffer::alignment_reserve()); |
7153 shlptr(t1, log2_intptr(HeapWordSize/sizeof(jint))); | 7153 shlptr(t1, log2_intptr(HeapWordSize/sizeof(jint))); |
7154 movptr(Address(top, arrayOopDesc::length_offset_in_bytes()), t1); | 7154 movl(Address(top, arrayOopDesc::length_offset_in_bytes()), t1); |
7155 // set klass to intArrayKlass | 7155 // set klass to intArrayKlass |
7156 // dubious reloc why not an oop reloc? | 7156 // dubious reloc why not an oop reloc? |
7157 movptr(t1, ExternalAddress((address) Universe::intArrayKlassObj_addr())); | 7157 movptr(t1, ExternalAddress((address) Universe::intArrayKlassObj_addr())); |
7158 // store klass last. concurrent gcs assumes klass length is valid if | 7158 // store klass last. concurrent gcs assumes klass length is valid if |
7159 // klass field is not null. | 7159 // klass field is not null. |