ladybird/Userland/Libraries/LibJS
Andreas Kling 448f837d38 LibJS/Bytecode: Round constant operands of bitwise binary expressions
This helps some of the Cloudflare Turnstile stuff run faster, since they
are deliberately screwing with JS engines by asking us to do a bunch of
bitwise operations on e.g 65535.56

By rounding such values in bytecode generation, the interpreter can stay
on the happy path while executing, and finish quite a bit faster.
2024-05-10 15:03:24 +00:00
..
Bytecode LibJS/Bytecode: Round constant operands of bitwise binary expressions 2024-05-10 15:03:24 +00:00
Contrib/Test262 LibJS: Make ParserError::to_string infallible 2024-04-05 20:01:37 -04:00
Heap LibJS: Make JS::Cell a Weakable 2024-05-04 21:42:59 +02:00
Runtime LibJS: Mark Value as a trivial type for AK collection purposes 2024-05-09 09:12:13 +02:00
Tests LibJS: Save and restore exceptions on yields in finalizers 2024-05-08 22:01:58 +02:00
AST.cpp LibJS: Skip some declarative env allocations in function instantiation 2024-05-06 15:09:20 +02:00
AST.h LibJS/Bytecode: Reuse bytecode registers 2024-05-09 09:12:13 +02:00
CMakeLists.txt LibJS/Bytecode: Reuse bytecode registers 2024-05-09 09:12:13 +02:00
Console.cpp LibJS+LibWeb: Make Console, ConsoleClient & subclasses GC-allocated 2024-04-21 09:12:25 +02:00
Console.h LibJS+LibWeb: Make Console, ConsoleClient & subclasses GC-allocated 2024-04-21 09:12:25 +02:00
CyclicModule.cpp LibJS+LibWeb: Use new Cell::Visitor helpers to avoid manual iteration 2024-04-16 07:40:01 +02:00
CyclicModule.h LibJS: Update import referrer's [[LoadedModules]] in place 2023-12-03 20:46:55 +01:00
Forward.h LibJS: Cache access to properties found in prototype chain 2024-05-04 21:42:59 +02:00
Lexer.cpp Everywhere: Use east const in more places 2024-04-19 06:31:19 -04:00
Lexer.h LibJS: Lex 1/2/3-byte tokens without HashMap lookups 2024-03-24 13:28:24 +01:00
MarkupGenerator.cpp AK+Userland: Remove some needlessly explicit conversions to StringView 2024-04-04 11:23:21 +02:00
MarkupGenerator.h LibJS: Fix redundancy-detection when printing raw values 2023-06-15 08:09:16 +02:00
Module.cpp LibJS: Add calls to JS_{DECLARE,DEFINE}_ALLOCATOR() 2024-04-09 09:13:06 +02:00
Module.h LibJS: Add calls to JS_{DECLARE,DEFINE}_ALLOCATOR() 2024-04-09 09:13:06 +02:00
ModuleLoading.h LibJS+LibWeb: Another round of bringing module loading closer to spec 2023-12-03 20:46:55 +01:00
Parser.cpp LibWeb+LibJS: Skip function environment allocation if possible 2024-05-04 06:48:07 +02:00
Parser.h LibWeb+LibJS: Skip function environment allocation if possible 2024-05-04 06:48:07 +02:00
ParserError.cpp LibJS: Make ParserError::to_string infallible 2024-04-05 20:01:37 -04:00
ParserError.h LibJS: Make ParserError::to_string infallible 2024-04-05 20:01:37 -04:00
Position.h LibJS: Make line-and-column resolution fast for large minified JS 2023-09-12 17:21:42 +02:00
Print.cpp LibJS+LibWeb: Implement resizable ArrayBuffer support for TypedArray 2023-12-26 11:16:10 +01:00
Print.h Everywhere: Remove the AK:: qualifier from Stream usages 2023-02-13 00:50:07 +00:00
SafeFunction.h LibJS: Add GC graph dumper 2023-08-17 18:27:02 +02:00
Script.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Script.h Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
SourceCode.cpp LibJS: Make line-and-column resolution fast for large minified JS 2023-09-12 17:21:42 +02:00
SourceCode.h LibJS: Make line-and-column resolution fast for large minified JS 2023-09-12 17:21:42 +02:00
SourceRange.h Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
SourceTextModule.cpp LibJS/Bytecode: Flatten bytecode to a contiguous representation 2024-05-07 09:15:40 +02:00
SourceTextModule.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
SyntaxHighlighter.cpp LibSyntax+Userland: Make LibSyntax not depend on LibGUI 2023-08-29 07:57:39 -04:00
SyntaxHighlighter.h LibSyntax: Teach each highlighter about it's comment syntax 2022-11-27 18:28:43 -07:00
SyntheticModule.cpp LibJS: Support LoadRequestedModule AO on SyntheticModule records 2023-12-03 20:46:55 +01:00
SyntheticModule.h LibJS: Support LoadRequestedModule AO on SyntheticModule records 2023-12-03 20:46:55 +01:00
Token.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
Token.h Everywhere: Use east const in more places 2024-04-19 06:31:19 -04:00