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

[WIP] Implement live variable analysis #229

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

kulcsaradam
Copy link
Contributor

With this patch I aim to optimize Walrus stack useage. This patch does not run without errors yet. Currently, there is a variable pushed down the stack for each local variable.

My idea is to analyse the Bytecode and get the maximum amount of variables the code needs at one point and only push down the stack that given number of variables.

The patch is still in draft, I am just curious about things I might have missed or done better! There are definitly parts that can be optimited, which I will try to once I get the patch running properly.

src/interpreter/ByteCode.h Outdated Show resolved Hide resolved
src/parser/WASMParser.cpp Outdated Show resolved Hide resolved
src/parser/WASMParser.cpp Outdated Show resolved Hide resolved
src/parser/WASMParser.cpp Outdated Show resolved Hide resolved
src/parser/WASMParser.cpp Show resolved Hide resolved
@kulcsaradam kulcsaradam force-pushed the live_analysis branch 2 times, most recently from bfdbb4c to 4bb4a46 Compare March 22, 2024 10:20
@kulcsaradam kulcsaradam force-pushed the live_analysis branch 2 times, most recently from 9d6a783 to 2b9957b Compare April 8, 2024 10:41
@kulcsaradam kulcsaradam force-pushed the live_analysis branch 5 times, most recently from e0b6926 to 0a169a2 Compare April 24, 2024 07:57
@kulcsaradam kulcsaradam force-pushed the live_analysis branch 2 times, most recently from 0a2c77f to c062e79 Compare May 7, 2024 14:01
Signed-off-by: Adam Laszlo Kulcsar <kuladam@inf.u-szeged.hu>
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