-
Notifications
You must be signed in to change notification settings - Fork 5.4k
ZJIT: Create more ergonomic type profiling API #13339
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
base: master
Are you sure you want to change the base?
Conversation
Eugh, going to fix some tests... |
This comment has been minimized.
This comment has been minimized.
4a7d775
to
5b4e3fe
Compare
(It would probably be ideal if this got squashed) |
Come to think of it, @k0kubun should I just have it profile at the top of every instruction? It'll only allocate if we actually recorded anything in the interpreter |
You mean adding a
My assumption is that just calling a C (Rust) function and retrieving profiling metadata could be non-zero overhead for profiled runs. Remember we weren't even allowed to increment a global counter |
Oh, no, sorry, I mean just in ISEQ->HIR translation. That will cause a read from |
Like lift the |
sounds good then :) |
Temporarily delete tests that pass NULL ISEQs to Function::new().
df4c70c
to
3188dc5
Compare
Instead of trying to (potentially incorrectly) map the FrameState stack at any
random instruction back to the profiled types, record the profiled type
of an HIR instruction at the safepoint and expose an API to query that.