RFR(S): 8222738: Shenandoah: assert(is_Proj()) failed when running cometd benchmarks
Roman Kennke
rkennke at redhat.com
Tue May 7 09:16:46 UTC 2019
Ok. Thanks!
Roman
> Thanks for the review. Actually, I think it's safer to also make the
> change below because we want to clone everything that's between the call
> and the fallthrough/exception paths, that is everything with a control
> of: the call itself or its control projection.
>
> Roland.
>
>
> diff -r f0739ec84bb4 -r 9968255985be src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp
> --- a/src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp Thu Apr 11 12:00:33 2019 +0200
> +++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp Thu May 02 20:47:23 2019 +0200
> @@ -1362,7 +1362,7 @@
> if (idx < n->outcnt()) {
> Node* u = n->raw_out(idx);
> Node* c = phase->ctrl_or_self(u);
> - if (c == ctrl) {
> + if (phase->is_dominator(call, c) && phase->is_dominator(c, projs.fallthrough_proj)) {
> stack.set_index(idx+1);
> assert(!u->is_CFG(), "");
> stack.push(u, 0);
>
More information about the hotspot-compiler-dev
mailing list