AlwaysInlineIntrinsics and AbstractInliningPolicy.isIntrinsic
Christian Thalinger
cthalinger at twitter.com
Thu Aug 10 08:08:04 UTC 2017
Currently looking at some inlining stuff and I noticed that AlwaysInlineIntrinsics in AbstractInliningPolicy.isIntrinsic doesn’t do anything since the two methods called (onlyIntrinsics and onlyForcedIntrinsics) have exactly the same implementation:
protected boolean isIntrinsic(Replacements replacements, InlineInfo info) {
if (AlwaysInlineIntrinsics.getValue(info.graph().getOptions())) {
return onlyIntrinsics(replacements, info);
} else {
return onlyForcedIntrinsics(replacements, info);
}
}
private static boolean onlyIntrinsics(Replacements replacements, InlineInfo info) {
for (int i = 0; i < info.numberOfMethods(); i++) {
if (!InliningUtil.canIntrinsify(replacements, info.methodAt(i), info.invoke().bci())) {
return false;
}
}
return true;
}
private static boolean onlyForcedIntrinsics(Replacements replacements, InlineInfo info) {
for (int i = 0; i < info.numberOfMethods(); i++) {
if (!InliningUtil.canIntrinsify(replacements, info.methodAt(i), info.invoke().bci())) {
return false;
}
}
return true;
}
Am I missing something?
More information about the graal-dev
mailing list