-
Notifications
You must be signed in to change notification settings - Fork 16
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
[EraVM] Implement __system_request_slice_fallback #557
[EraVM] Implement __system_request_slice_fallback #557
Conversation
Benchmark results:
|
00abe12
to
c43bcd8
Compare
Since we disabled CSE in GVN and NewGVN, running EraVMCSE later in the pipeline should fix these degradations. |
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.
Oh lawd, sorry, I was slightly wrong about this @__system_request_fallback
!
It must return the pointer it receives from the underlying call, that is system_request_result_abi_data
, since the call returns not a single value, but the whole slice!
Let's also rename it to @__system_request_slice_fallback
, as we may have all 4 combinations in the future.
This implementation is similar to __system_request, but without the initial 4 bytes for the signature, and returns a whole slice. Signed-off-by: Vladimir Radosavljevic <vr@matterlabs.dev>
…_request, __system_request_slice_fallback and __sha3 Currently, calls to these functions are combined. Signed-off-by: Vladimir Radosavljevic <vr@matterlabs.dev>
c43bcd8
to
a8961c8
Compare
Done. Changed the name to |
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.
Thanks!
Please merge.
…t_slice_fallback and __sha3 CSE of these calls should be only done in EraVMCSE pass. Signed-off-by: Vladimir Radosavljevic <vr@matterlabs.dev>
Since we disabled CSE of some calls in GVN and NewGVN, run this pass to do the CSE. Also, don't do the CSE of the __system_request in case signature has changed after some optimizations. Signed-off-by: Vladimir Radosavljevic <vr@matterlabs.dev>
a8961c8
to
1cefc11
Compare
Only changed comments, so merging. |
This implementation is similar to __system_request, but without the initial 4 bytes for the signature, and returns a whole slice.