RFR: jdk11: guard shared code with UseShenandoahGC

Aleksey Shipilev shade at redhat.com
Wed Oct 17 16:23:39 UTC 2018


On 10/17/2018 05:24 PM, Aleksey Shipilev wrote:
> On 10/17/2018 05:14 PM, Roland Westrelin wrote:
>> http://cr.openjdk.java.net/~roland/shenandoah/jdk11-UseShenandoahGC/webrev.00/
>>
>> Some missing UseShenandoahGC to guard shared code changes.
> 
> These look good. We'll need to glance over webrev after this patch lands.

Okay, some leftovers that I see with my tired eye, and not sure if they are innocuous:
 https://builds.shipilev.net/patch-openjdk-shenandoah-jdk11/latest/

*) ArrayCopyNode::array_copy_forward/array_copy_backward have unprotected
"mm->set_memory_at(alias_idx_dest, mem);", "phase->transform(mm);"

*) ArrayCopyNode::Ideal has some unprotected memory merges

*) IfNode::search_identical, seems this line got dropped:

1547          (req() == 3 && dom->in(2) != in(2)) || // Not same input 2?

*) loopopts.cpp: this looks odd, do we actually need to rewrite this condition like that? Also, why
double assignment to "n_ctrl"?

1323   if (identical_backtoback_ifs(n)) {
1324     Node *n_ctrl = n_ctrl = n->in(0);
1325     if (can_split_if(n_ctrl)) {

*) matcher.cpp: unprotected branch?

1008             if (n->is_MemBar()) {
1009               m->as_MachMemBar()->set_adr_type(n->adr_type());
1010             }

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list