ZJIT: Add InvokeSuper and InvokeSuperWithoutBlock#14400
ZJIT: Add InvokeSuper and InvokeSuperWithoutBlock#14400tekknolagi wants to merge 2 commits intoruby:masterfrom
Conversation
Support the same limited set of calls as SendWithoutBlock. Don't attempt to cache yet.
|
I don't like this PR as-is. The reason I wanted to split up lookup and invoke instructions is because we can simplify our code: we can have Lookup, LookupSuper, ... and then just Send, SendWithoutBlock. We don't need to fully explode the powerset of combinations (and their optimized variants) into the IR. Ideally we only have ~1 kind of Ruby send that we can analyze, simplify, inline, etc. I don't want to treat invokesuper differently from e.g. invokeblock. |
|
That sounds right. YJIT lets those instructions share the same At the same time, however, all these instructions need separate fallback implementations. We might not need two |
|
Closing since it looks like you got to it. |
Support the same limited set of calls as SendWithoutBlock. Don't attempt
to cache yet.