6633953: type2aelembytes{T_ADDRESS} should be 8 bytes in 64 bit VM

T_ADDRESS size is defined as 'int' size (4 bytes) but C2 use it for raw pointers and as memory type for StoreP and LoadP nodes.

Reviewed-by: jrose
This commit is contained in:
Vladimir Kozlov 2008-02-25 15:05:44 -08:00
parent 0dd8f3e8c0
commit 9f1a8ede80
18 changed files with 53 additions and 31 deletions

View file

@ -1447,7 +1447,7 @@ Node* GraphKit::store_oop_to_unknown(Node* ctl,
//-------------------------array_element_address-------------------------
Node* GraphKit::array_element_address(Node* ary, Node* idx, BasicType elembt,
const TypeInt* sizetype) {
uint shift = exact_log2(type2aelembytes[elembt]);
uint shift = exact_log2(type2aelembytes(elembt));
uint header = arrayOopDesc::base_offset_in_bytes(elembt);
// short-circuit a common case (saves lots of confusing waste motion)