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

Replace __jmpb_ssp with __jmp_mem #5674

Merged
merged 4 commits into from Mar 3, 2024
Merged

Replace __jmpb_ssp with __jmp_mem #5674

merged 4 commits into from Mar 3, 2024

Conversation

vaivaswatha
Copy link
Contributor

@vaivaswatha vaivaswatha commented Feb 27, 2024

The new intrinsic jumps to an absolute address that is fetched from MEM[$hp]. This is more versatile than the __jmpb_ssp that was previously provided. An immediate advantage being that we can have a working version of ldc even in debug
builds.

The test has been modified too, to demonstrate an LDC use that works. A working version is at https://github.com/FuelLabs/ldc-testing/blob/309c79a8f73e26992123fb3ee9777b89dfda9ab1/test-contract/src/main.sw

The new intrinsic jumps to an absolute address
that is fetched from MEM[$hp]. This is more
versatile than the __jmpb_ssp that was previously
provided. An immediate advantage being that we
can have a working version of `ldc` even in debug
builds.

The test has been modified too, to demonstrate
an LDC use that works. A working version is
at https://github.com/FuelLabs/ldc-testing/blob/309c79a8f73e26992123fb3ee9777b89dfda9ab1/test-contract/src/main.sw
@vaivaswatha vaivaswatha requested review from dmihal and a team February 27, 2024 09:09
@vaivaswatha vaivaswatha self-assigned this Feb 27, 2024
@vaivaswatha vaivaswatha changed the title Replace __jmpb_ssp with __jmp_mem Replace __jmpb_ssp with __jmp_mem Feb 27, 2024
Copy link

Benchmark for 45f8b03

Click to view benchmark
Test Base PR %
code_action 5.1±0.02ms 5.1±0.07ms 0.00%
code_lens 290.2±3.39ns 293.3±9.29ns +1.07%
compile 3.0±0.03s 3.0±0.03s 0.00%
completion 4.7±0.11ms 4.7±0.14ms 0.00%
did_change_with_caching 2.9±0.03s 2.9±0.05s 0.00%
document_symbol 971.8±28.45µs 1035.6±24.38µs +6.57%
format 73.7±1.14ms 75.2±0.90ms +2.04%
goto_definition 368.2±4.18µs 364.5±7.81µs -1.00%
highlight 8.8±0.17ms 8.8±0.15ms 0.00%
hover 604.5±5.99µs 529.1±7.75µs -12.47%
idents_at_position 171.7±0.24µs 122.3±0.29µs -28.77%
inlay_hints 650.1±9.80µs 651.4±16.25µs +0.20%
on_enter 483.3±12.68ns 486.1±18.92ns +0.58%
parent_decl_at_position 3.6±0.06ms 3.6±0.04ms 0.00%
prepare_rename 362.1±4.23µs 355.6±8.65µs -1.80%
rename 9.2±0.22ms 9.2±0.18ms 0.00%
semantic_tokens 1029.5±22.52µs 1038.9±20.57µs +0.91%
token_at_position 421.6±3.29µs 354.8±5.70µs -15.84%
tokens_at_position 3.6±0.05ms 3.6±0.04ms 0.00%
tokens_for_file 511.9±1.97µs 405.9±3.63µs -20.71%
traverse 38.1±0.97ms 38.9±1.15ms +2.10%

@IGI-111 IGI-111 requested a review from a team February 27, 2024 14:03
Copy link

github-actions bot commented Mar 2, 2024

Benchmark for cfbf986

Click to view benchmark
Test Base PR %
code_action 5.1±0.14ms 5.5±0.08ms +7.84%
code_lens 296.0±7.55ns 312.1±18.55ns +5.44%
compile 3.0±0.04s 2.9±0.03s -3.33%
completion 4.7±0.08ms 4.7±0.06ms 0.00%
did_change_with_caching 2.9±0.03s 2.8±0.02s -3.45%
document_symbol 956.2±40.41µs 962.3±29.70µs +0.64%
format 73.3±0.84ms 74.4±1.32ms +1.50%
goto_definition 364.6±3.46µs 412.3±5.87µs +13.08%
highlight 8.8±0.14ms 8.8±0.16ms 0.00%
hover 529.7±4.16µs 578.8±2.15µs +9.27%
idents_at_position 123.7±0.36µs 122.0±0.34µs -1.37%
inlay_hints 646.5±31.65µs 684.6±14.10µs +5.89%
on_enter 481.7±13.42ns 499.7±17.80ns +3.74%
parent_decl_at_position 3.6±0.03ms 3.6±0.05ms 0.00%
prepare_rename 354.2±6.04µs 377.5±4.57µs +6.58%
rename 9.1±0.03ms 9.1±0.20ms 0.00%
semantic_tokens 1037.2±22.58µs 1039.7±11.18µs +0.24%
token_at_position 358.8±3.35µs 403.7±4.71µs +12.51%
tokens_at_position 3.6±0.03ms 3.6±0.04ms 0.00%
tokens_for_file 407.8±2.27µs 415.1±1.69µs +1.79%
traverse 37.8±1.15ms 38.4±0.93ms +1.59%

@IGI-111 IGI-111 enabled auto-merge (squash) March 3, 2024 05:48
Copy link

github-actions bot commented Mar 3, 2024

Benchmark for 5896535

Click to view benchmark
Test Base PR %
code_action 5.2±0.10ms 5.1±0.13ms -1.92%
code_lens 299.5±8.36ns 306.7±13.91ns +2.40%
compile 4.3±0.10s 4.3±0.17s 0.00%
completion 5.2±0.26ms 4.7±0.01ms -9.62%
did_change_with_caching 3.6±0.10s 3.8±0.08s +5.56%
document_symbol 1024.6±46.50µs 1024.1±44.42µs -0.05%
format 73.5±1.64ms 73.2±1.14ms -0.41%
goto_definition 360.9±5.57µs 364.9±5.77µs +1.11%
highlight 8.9±0.24ms 8.7±0.15ms -2.25%
hover 539.6±7.25µs 550.4±6.02µs +2.00%
idents_at_position 121.7±0.39µs 121.5±0.78µs -0.16%
inlay_hints 638.4±32.38µs 650.2±10.92µs +1.85%
on_enter 480.9±12.02ns 492.8±40.30ns +2.47%
parent_decl_at_position 3.6±0.06ms 3.6±0.04ms 0.00%
prepare_rename 353.3±3.97µs 365.7±7.59µs +3.51%
rename 9.3±0.35ms 9.1±0.15ms -2.15%
semantic_tokens 1067.1±22.96µs 1048.1±22.97µs -1.78%
token_at_position 358.5±2.91µs 355.4±2.72µs -0.86%
tokens_at_position 3.6±0.03ms 3.6±0.06ms 0.00%
tokens_for_file 412.8±2.95µs 408.0±6.69µs -1.16%
traverse 38.4±1.22ms 38.9±1.13ms +1.30%

@IGI-111 IGI-111 merged commit 0c03ce0 into master Mar 3, 2024
37 checks passed
@IGI-111 IGI-111 deleted the vaivaswatha/jmp_mem branch March 3, 2024 06:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants