Heads-up: barriers for constants crash C2
Aleksey Shipilev
shade at redhat.com
Mon Jun 12 17:00:35 UTC 2017
On 06/12/2017 05:17 PM, Roland Westrelin wrote:
> Fix is below. I will have it go through more testing before I push it.
>
> Roland.
>
> diff --git a/src/share/vm/opto/shenandoahSupport.cpp b/src/share/vm/opto/shenandoahSupport.cpp
> --- a/src/share/vm/opto/shenandoahSupport.cpp
> +++ b/src/share/vm/opto/shenandoahSupport.cpp
> @@ -3729,7 +3729,7 @@
> test_evacuation_in_progress(ctrl, alias, raw_mem, wb_mem, evacuation_iff, evac_in_progress, evac_not_in_progress, phase);
>
> Node* region = new RegionNode(4);
> - Node* val_phi = PhiNode::make_blank(region, val);
> + Node* val_phi = new PhiNode(region, val->bottom_type()->is_oopptr()->cast_to_nonconst());
> Node* mem_phi = PhiNode::make(region, wb_mem, Type::MEMORY, phase->C->alias_type(wb->adr_type())->adr_type());
> Node* raw_mem_phi = PhiNode::make(region, raw_mem, Type::MEMORY, TypeRawPtr::BOTTOM);
Thanks, seems to help:
- failing test
- specjvm2008 fastdebug/release
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list