-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: turn on specialization spoofing mechanism in the compiler #25639
Conversation
edgecycle = true | ||
break | ||
end | ||
if infstate.linfo.specTypes == sig |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should checks against signatures be replaced in the same manner as checks against methods?
break | ||
end | ||
working_method = method_for_specialization_heuristics(infstate.src, infstate.linfo.def) | ||
if checked_method === working_method |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should all method checks (that are part of specialization heuristics) be replaced like this? In general, when should the "spoof" method be used vs. the "real" method?
@jrevels Maybe pull the rename of the CodeInfo field out of this patch and merge, so it doesn't conflict? |
Closing because @vtjnash is going to recreate the work here in a different (hopefully more correct) PR |
Follow-up to #24852. Intends to close #24676.
The intention of this PR is to rewrite relevant parts of the compiler to respect the
signature_for_specialization_heuristics
CodeInfo
field. I've started off with some very naive changes toabstract_call_method
that are probably incorrect...