Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8063386 | 8u45 | Vladimir Kozlov | P3 | Resolved | Fixed | b01 |
JDK-8054958 | 8u40 | Vladimir Kozlov | P3 | Resolved | Fixed | b02 |
JDK-8070945 | emb-8u47 | Vladimir Kozlov | P3 | Resolved | Fixed | team |
Some intrinsic may need to check several classes in predicate for which intrinsic should be generated.
The mechanism of intrinsic_foo_predicate() and intrinsic_foo() was designed only to check one class so that you don't need class check in intrinsic_foo().
But for several classes you have to check instanceOf for all of them in both intrinsic_foo_predicate() and intrinsic_foo().
We need to expand this functionality to do something like next in PredictedIntrinsicGenerator::generate():
int klass_cnt = intrinsic_foo_klass_count();
Node* result_region = new Region(klass_cnt+1);
for (int i = 0; i < klass_cnt; i++) {
false_control = intrinsic_foo_predicate(i);
intrinsic_foo(i);
result_region->set_req(i, control());
set_control(false_control);
}
generate_normal_compile()
result_region->set_req(klass_cnt, control());
set_control(result_region);
The mechanism of intrinsic_foo_predicate() and intrinsic_foo() was designed only to check one class so that you don't need class check in intrinsic_foo().
But for several classes you have to check instanceOf for all of them in both intrinsic_foo_predicate() and intrinsic_foo().
We need to expand this functionality to do something like next in PredictedIntrinsicGenerator::generate():
int klass_cnt = intrinsic_foo_klass_count();
Node* result_region = new Region(klass_cnt+1);
for (int i = 0; i < klass_cnt; i++) {
false_control = intrinsic_foo_predicate(i);
intrinsic_foo(i);
result_region->set_req(i, control());
set_control(false_control);
}
generate_normal_compile()
result_region->set_req(klass_cnt, control());
set_control(result_region);
- backported by
-
JDK-8054958 Expand functionality of PredictedIntrinsicGenerator
- Resolved
-
JDK-8063386 Expand functionality of PredictedIntrinsicGenerator
- Resolved
-
JDK-8070945 Expand functionality of PredictedIntrinsicGenerator
- Resolved
- relates to
-
JDK-8046261 JEP 207: Leverage CPU Instructions to Improve SHA Performance on SPARC
- Closed