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

Support the updated versions of sww, swwq, srw, and srwq in the compiler and the standard library #3159

Closed
mohammadfawaz opened this issue Oct 26, 2022 · 1 comment · Fixed by #3181
Assignees
Labels
compiler: codegen Everything to do with IR->ASM, register allocation, etc. compiler: frontend Everything to do with type checking, control flow analysis, and everything between parsing and IRgen compiler: parser Everything to do with the parser language feature Core language features visible to end users team:compiler Compiler Team

Comments

@mohammadfawaz
Copy link
Contributor

Ref:
FuelLabs/fuel-specs#414
FuelLabs/fuel-specs#417
FuelLabs/fuel-specs#422

  1. The first step is support the new opcodes and restore parity with the current behavior.
  2. The second step is to think through how to best use the new status register that is being set. The status registers tells us whether a storage slot has been written before.
@mohammadfawaz mohammadfawaz added language feature Core language features visible to end users compiler: frontend Everything to do with type checking, control flow analysis, and everything between parsing and IRgen compiler: parser Everything to do with the parser compiler: codegen Everything to do with IR->ASM, register allocation, etc. labels Oct 26, 2022
@mohammadfawaz
Copy link
Contributor Author

We can't work on this before all the required changes in the VM are made and published.

@mohammadfawaz mohammadfawaz self-assigned this Oct 27, 2022
@mohammadfawaz mohammadfawaz linked a pull request Oct 28, 2022 that will close this issue
Voxelot added a commit that referenced this issue Nov 2, 2022
- $rB on state opcodes is now used as a flag for whether the storage
slot was previously set
- $rD on quad word state opcodes is reserved for use as accessing a
range of slots (currently hardcoded to 1)


Closes #3159
Closes #2115 (the dependency is
on `sway-core` now)

Co-authored-by: Mohammad Fawaz <mohammadfawaz89@gmail.com>
Co-authored-by: green <xgreenx9999@gmail.com>
@IGI-111 IGI-111 added the team:compiler Compiler Team label Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler: codegen Everything to do with IR->ASM, register allocation, etc. compiler: frontend Everything to do with type checking, control flow analysis, and everything between parsing and IRgen compiler: parser Everything to do with the parser language feature Core language features visible to end users team:compiler Compiler Team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants