Vaivaswatha N

Results 48 issues of Vaivaswatha N

If the return value of a MatchExpr is a function, we do not handle it now because the argument names may be different in each. This can be supported by...

enhancement
static analysis
gas

When analyzing this contract, https://github.com/merkaliser/scilla-vanilla/blob/develop/ERC223/contract.scilla, the analyzed GUP has the term "Element of: balances" appearing twice even thought it's the same. This is likely due to two identifiers with different...

bug
static analysis
gas

I'm working on a project that uses LLVM to JIT compile code and execute it. The project uses `boost::unit_test` for its testsuite. I came across a weird behaviour: 1. Run...

discussion

The Sway-IR currently limits basic blocks to have only a single PHI node. That wouldn't work, for example, in the following case: ``` let mut x; let mut y; if...

enhancement
compiler: ir

For code such as ``` let a: u8 = 2; let b: u8 = 22; assert(__add(a, b) == 24); ``` we generate the IR ``` local ptr u64 a local...

P: critical
compiler: optimization

Issue #512 was resolved with #513 as a working fix for a release. This can be done differently (@anton-trunov) and this Issue is to track that work. A WIP PR...

code style / refactoring

After #205, we have two monads in `MonadUtils.ml`. There should be a functor `MonadUtilities` taking a module of signature that has `pure`, `fail`, etc and mixes in all that functionality.

code style / refactoring
advanced

## Description This PR includes a spiller for the register allocator and other changes to the algorithm itself. Fixes #3429, #2657 #4631, #4511.

``` fn main() -> u64 { let s = S { x: 2, y: 3, z: 4, w: 5 }; s.x } ``` must become ``` fn main() -> u64...

compiler: optimization

When working on a register spiller (#4722 / #4746) for https://github.com/FuelLabs/sway/issues/4631 and https://github.com/FuelLabs/sway/issues/4511, I observed that `main` had ended up being very large (and hence causing high register pressure). This...

compiler: ir