diff options
author | Ali Mohammad Pur <ali.mpfard@gmail.com> | 2021-06-09 06:49:58 +0430 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-06-09 09:07:29 +0200 |
commit | 01e8f0889acf9fc0c84402793ecf96859c737f9a (patch) | |
tree | d3451229cdfd0117929b2216ca91a011a34e2d9e /Userland/Libraries/LibJS/Forward.h | |
parent | d7a25cdb82ff5326236934dd6e99e1a1b2bef3fe (diff) | |
download | serenity-01e8f0889acf9fc0c84402793ecf96859c737f9a.zip |
LibJS: Generate bytecode in basic blocks instead of one big block
This limits the size of each block (currently set to 1K), and gets us
closer to a canonical, more easily analysable bytecode format.
As a result of this, "Labels" are now simply entries to basic blocks.
Since there is no more 'conditional' jump (as all jumps are always
taken), JumpIf{True,False} are unified to JumpConditional, and
JumpIfNullish is renamed to JumpNullish.
Also fixes #7914 as a result of reimplementing the loop logic.
Diffstat (limited to 'Userland/Libraries/LibJS/Forward.h')
-rw-r--r-- | Userland/Libraries/LibJS/Forward.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Userland/Libraries/LibJS/Forward.h b/Userland/Libraries/LibJS/Forward.h index 0a2665cc42..be4536bc91 100644 --- a/Userland/Libraries/LibJS/Forward.h +++ b/Userland/Libraries/LibJS/Forward.h @@ -163,7 +163,7 @@ template<class T> class Handle; namespace Bytecode { -class Block; +class BasicBlock; class Generator; class Instruction; class Interpreter; |