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[ir]: return IRnode from context.new_variable() #3905

Closed
wants to merge 34 commits into from

Conversation

charles-cooper
Copy link
Member

What I did

per title, return IRnode from context.new_variable(). additionally, when experimental_codegen is enabled, return an abstract "alloca" object instead of an int. this allows us to treat allocated memory as abstract, which will enable mem2stack and related optimizations.

How I did it

How to verify it

Commit message

Commit message for the final, squashed PR. (Optional, but reviewers will appreciate it! Please see our commit message style guide for what we would ideally like to see in a commit message.)

Description for the changelog

Cute Animal Picture

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

def set_global_settings(new_settings: Optional[Settings]) -> None:
assert isinstance(new_settings, Settings) or new_settings is None
# TODO evil circular import
from vyper.evm.opcodes import DEFAULT_EVM_VERSION, EVM_VERSIONS, set_global_evm_version

Check notice

Code scanning / CodeQL

Cyclic import Note

Import of module
vyper.evm.opcodes
begins an import cycle.
vyper/evm/opcodes.py Fixed Show fixed Hide fixed
vyper/cli/vyper_compile.py Fixed Show fixed Hide fixed
vyper/evm/opcodes.py Fixed Show fixed Hide fixed
@codecov-commenter
Copy link

codecov-commenter commented Apr 2, 2024

Codecov Report

Attention: Patch coverage is 92.02899% with 11 lines in your changes are missing coverage. Please review.

Project coverage is 89.14%. Comparing base (e34ca9c) to head (d372ad9).
Report is 2 commits behind head on master.

Files Patch % Lines
vyper/evm/opcodes.py 33.33% 6 Missing ⚠️
vyper/cli/vyper_compile.py 33.33% 1 Missing and 1 partial ⚠️
vyper/codegen/context.py 95.74% 1 Missing and 1 partial ⚠️
vyper/builtins/functions.py 93.33% 1 Missing ⚠️

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3905      +/-   ##
==========================================
- Coverage   90.92%   89.14%   -1.78%     
==========================================
  Files          95       95              
  Lines       14387    14414      +27     
  Branches     3186     3189       +3     
==========================================
- Hits        13081    12849     -232     
- Misses        904     1110     +206     
- Partials      402      455      +53     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@charles-cooper
Copy link
Member Author

charles-cooper commented Apr 28, 2024

superseded by #3941 (these commits were incorporated there)

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

2 participants