Skip to content
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

generated CodeInfo inlining should happen in Base rather than in Cassette #7

Closed
jrevels opened this issue Sep 5, 2017 · 1 comment
Labels

Comments

@jrevels
Copy link
Collaborator

jrevels commented Sep 5, 2017

To properly leverage JuliaLang/julia#22440, one needs to reimplement a bit of work that would normally be done as part of inlining during type inference.

Cassette currently does this as part of CodeInfo lookup, but this should really be in Base. Otherwise, the code will easily become stale w.r.t. inference changes. For example, JuliaLang/julia#22826 has already broken the current implementation in Cassette.

This pass could be either be exposed from reflection.jl (maybe as an inline keyword arg to lowered_code), or automagically performed by the compiler after generator expansion in the case where expansion yields a CodeInfo object instead of an Expr.

@jrevels jrevels changed the title upstream issue: generated CodeInfo inlining should happen in Base rather than in Cassette generated CodeInfo inlining should happen in Base rather than in Cassette Oct 11, 2017
@jrevels
Copy link
Collaborator Author

jrevels commented Apr 30, 2018

After a bunch of discussion, it's becoming clear that this situation is unlikely to be resolved until Julia has a separately versioned compiler API, or something similar. I'm going to close this issue here, since at this point, it's not really a Cassette problem and more of a Julia problem.

@jrevels jrevels closed this as completed Apr 30, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant