Mercurial > hg > truffle
comparison src/share/vm/opto/library_call.cpp @ 17776:9ab9f254cfe2
6653795: C2 intrinsic for Unsafe.getAddress performs pointer sign extension on 32-bit systems
Summary: Native pointers less than 64 bits wide should be extended as an unsigned number.
Reviewed-by: kvn, kevinw
author | poonam |
---|---|
date | Mon, 24 Mar 2014 08:43:10 -0700 |
parents | 085b304a1cc5 |
children | 62c54fcc0a35 |
comparison
equal
deleted
inserted
replaced
17772:7d175751ef7f | 17776:9ab9f254cfe2 |
---|---|
2593 } | 2593 } |
2594 break; | 2594 break; |
2595 case T_ADDRESS: | 2595 case T_ADDRESS: |
2596 // Cast to an int type. | 2596 // Cast to an int type. |
2597 p = _gvn.transform(new (C) CastP2XNode(NULL, p)); | 2597 p = _gvn.transform(new (C) CastP2XNode(NULL, p)); |
2598 p = ConvX2L(p); | 2598 p = ConvX2UL(p); |
2599 break; | 2599 break; |
2600 default: | 2600 default: |
2601 fatal(err_msg_res("unexpected type %d: %s", type, type2name(type))); | 2601 fatal(err_msg_res("unexpected type %d: %s", type, type2name(type))); |
2602 break; | 2602 break; |
2603 } | 2603 } |