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

feat: optimize dynarray and bytearray copies #3499

Merged

Conversation

charles-cooper
Copy link
Member

@charles-cooper charles-cooper commented Jul 15, 2023

What I did

include the length word in the batch copy instead of issuing a separate store instruction.

brings CurveStableSwapMetaNG.vy down by 315 bytes (~1.5%) and VaultV3.vy by 45 bytes (0.25%) in both --optimize codesize and --optimize gas modes.

How I did it

How to verify it

Commit message

include the length word in the batch copy instead of issuing a separate
store instruction.

brings CurveStableSwapMetaNG.vy down by 315 bytes (~1.5%) and VaultV3.vy
by 45 bytes (0.25%) in both `--optimize codesize` and `--optimize gas`
modes.

Description for the changelog

Cute Animal Picture

Put a link to a cute animal picture inside the parenthesis-->

@codecov-commenter
Copy link

codecov-commenter commented Jul 15, 2023

Codecov Report

Merging #3499 (727be2a) into master (5dc3ac7) will decrease coverage by 0.04%.
The diff coverage is 100.00%.

❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.

@@            Coverage Diff             @@
##           master    #3499      +/-   ##
==========================================
- Coverage   89.19%   89.16%   -0.04%     
==========================================
  Files          84       84              
  Lines       10948    10953       +5     
  Branches     2503     2503              
==========================================
+ Hits         9765     9766       +1     
- Misses        771      775       +4     
  Partials      412      412              
Impacted Files Coverage Δ
vyper/codegen/core.py 87.19% <100.00%> (-0.23%) ⬇️

... and 1 file with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

include the length word store into the batch copy
batch the length copy into the copy
@charles-cooper charles-cooper force-pushed the feat/optimize_dynarray_setter branch from 1232cba to bcb94e2 Compare July 15, 2023 15:40
@charles-cooper charles-cooper marked this pull request as ready for review July 16, 2023 16:41
@charles-cooper charles-cooper requested a review from fubuloubu July 16, 2023 16:41
@charles-cooper charles-cooper enabled auto-merge (squash) July 16, 2023 20:04
@charles-cooper charles-cooper merged commit 9e3b9a2 into vyperlang:master Jul 17, 2023
@charles-cooper charles-cooper deleted the feat/optimize_dynarray_setter branch July 17, 2023 00:16
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.

3 participants