RFR(S): 8140309: [REDO] failed: no mismatched stores, except on raw memory: StoreB StoreI

Tobias Hartmann tobias.hartmann at oracle.com
Thu Nov 5 08:48:22 UTC 2015


Hi Roland,

still looks good to me!

Best,
Tobias

On 04.11.2015 15:21, Roland Westrelin wrote:
> http://cr.openjdk.java.net/~roland/8140309/webrev.00/
> 
> Same as 8136473 with only the following change:
> 
> diff --git a/src/share/vm/opto/library_call.cpp b/src/share/vm/opto/library_call.cpp
> --- a/src/share/vm/opto/library_call.cpp
> +++ b/src/share/vm/opto/library_call.cpp
> @@ -2527,7 +2527,7 @@
>    // of safe & unsafe memory.
>    if (need_mem_bar) insert_mem_bar(Op_MemBarCPUOrder);
> 
> -  assert(is_native_ptr || alias_type->adr_type() == TypeOopPtr::BOTTOM ||
> +  assert(alias_type->adr_type() == TypeRawPtr::BOTTOM || alias_type->adr_type() == TypeOopPtr::BOTTOM ||
>           alias_type->field() != NULL || alias_type->element() != NULL, "field, array element or unknown");
>    bool mismatched = false;
>    if (alias_type->element() != NULL || alias_type->field() != NULL) {
> 
> alias_type->adr_type() == TypeRawPtr::BOTTOM covers the is_native_ptr case and the case where the unsafe method is called with a null object.
> 
> Roland.
> 


More information about the hotspot-compiler-dev mailing list