ladybird/Libraries/LibJS/Bytecode
Andreas Kling edb5547e37 LibJS: Don't incrementally delete PropertyNameIterator while iterating
We were spending a lot of time removing each property name from the
iterator's underlying HashMap while iterating over it. This wasn't
actually necessary, so let's stop doing it and instead just iterate
over the property names with a stored HashTable iterator.

1.10x speedup on MicroBench/for-in-indexed-properties.js
2025-05-03 22:00:51 +02:00
..
ASTCodegen.cpp LibJS: Optimize array destructuring assignment for builtin iterators 2025-05-01 16:57:56 +03:00
BasicBlock.cpp
BasicBlock.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Builtins.cpp
Builtins.h LibJS: Add builtin for Math.random() 2025-04-03 13:56:39 +02:00
CodeGenerationError.cpp
CodeGenerationError.h
Executable.cpp LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Executable.h LibJS: Add new operand type for function arguments 2025-04-26 11:02:29 +02:00
Generator.cpp LibJS: Mark arguments local as initialized after creating it 2025-04-28 01:23:56 +02:00
Generator.h LibJS: Skip allocating locals for arguments that allowed to be local 2025-04-26 11:02:29 +02:00
IdentifierTable.cpp LibJS: Use FlyString in PropertyKey instead of DeprecatedFlyString 2025-03-24 22:27:17 +00:00
IdentifierTable.h LibJS: Make Optional<IdentifierTableIndex> use less space 2025-03-27 19:50:13 +00:00
Instruction.cpp LibJS: Remove unused InstructionStreamIterator::source_code getter 2025-04-16 10:41:44 -06:00
Instruction.h LibJS: Optimize array destructuring assignment for builtin iterators 2025-05-01 16:57:56 +03:00
Interpreter.cpp LibJS: Don't incrementally delete PropertyNameIterator while iterating 2025-05-03 22:00:51 +02:00
Interpreter.h Revert "LibJS: Add StackFrame to avoid indirection in VM register access" 2025-04-29 16:08:42 +02:00
Label.cpp
Label.h
Op.h LibJS: Optimize array destructuring assignment for builtin iterators 2025-05-01 16:57:56 +03:00
Operand.h LibJS: Add new operand type for function arguments 2025-04-26 11:02:29 +02:00
RegexTable.cpp
RegexTable.h LibJS: Use u32 for RegexTableIndex 2025-04-06 02:05:27 +02:00
Register.h LibJS: Remove unused bytecode VM register reservation 2025-04-30 09:38:40 +02:00
ScopedOperand.cpp
ScopedOperand.h
StringTable.cpp LibJS: Make Optional<StringTableIndex> use less space 2025-04-06 02:05:27 +02:00
StringTable.h LibJS: Make Optional<StringTableIndex> use less space 2025-04-06 02:05:27 +02:00