Mercurial > hg > truffle
comparison src/share/vm/opto/library_call.cpp @ 6853:d804e148cff8
Merge
author | kvn |
---|---|
date | Fri, 12 Oct 2012 09:22:52 -0700 |
parents | d8ce2825b193 8e47bac5643a |
children | cfe522e6461c |
comparison
equal
deleted
inserted
replaced
6842:b9a9ed0f8eeb | 6853:d804e148cff8 |
---|---|
2376 sharpened_klass = elem_type->klass(); | 2376 sharpened_klass = elem_type->klass(); |
2377 } | 2377 } |
2378 } | 2378 } |
2379 } | 2379 } |
2380 | 2380 |
2381 if (sharpened_klass != NULL) { | 2381 // The sharpened class might be unloaded if there is no class loader |
2382 // contraint in place. | |
2383 if (sharpened_klass != NULL && sharpened_klass->is_loaded()) { | |
2382 const TypeOopPtr* tjp = TypeOopPtr::make_from_klass(sharpened_klass); | 2384 const TypeOopPtr* tjp = TypeOopPtr::make_from_klass(sharpened_klass); |
2383 | 2385 |
2384 #ifndef PRODUCT | 2386 #ifndef PRODUCT |
2385 if (PrintIntrinsics || PrintInlining || PrintOptoInlining) { | 2387 if (PrintIntrinsics || PrintInlining || PrintOptoInlining) { |
2386 tty->print(" from base type: "); adr_type->dump(); | 2388 tty->print(" from base type: "); adr_type->dump(); |
2387 tty->print(" sharpened value: "); tjp->dump(); | 2389 tty->print(" sharpened value: "); tjp->dump(); |
2388 } | 2390 } |
2389 #endif | 2391 #endif |
2390 // Sharpen the value type. | 2392 // Sharpen the value type. |
2391 return tjp; | 2393 return tjp; |
2392 } | 2394 } |
4379 // base_off: | 4381 // base_off: |
4380 // 8 - 32-bit VM | 4382 // 8 - 32-bit VM |
4381 // 12 - 64-bit VM, compressed klass | 4383 // 12 - 64-bit VM, compressed klass |
4382 // 16 - 64-bit VM, normal klass | 4384 // 16 - 64-bit VM, normal klass |
4383 if (base_off % BytesPerLong != 0) { | 4385 if (base_off % BytesPerLong != 0) { |
4384 assert(UseCompressedOops, ""); | 4386 assert(UseCompressedKlassPointers, ""); |
4385 if (is_array) { | 4387 if (is_array) { |
4386 // Exclude length to copy by 8 bytes words. | 4388 // Exclude length to copy by 8 bytes words. |
4387 base_off += sizeof(int); | 4389 base_off += sizeof(int); |
4388 } else { | 4390 } else { |
4389 // Include klass to copy by 8 bytes words. | 4391 // Include klass to copy by 8 bytes words. |