1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-30 18:28:10 +00:00
serenity/Userland/Libraries/LibJS/Runtime
Andreas Kling f47a14b9d6 LibJS: Use a premade shape when creating iterator result objects
Instead of going through the steps of creating an empty new object,
and adding two properties ("value" and "done") to it, we can pre-bake
a shape object and cache the property offsets.

This makes creating iterator result objects in the runtime much faster.

47% speedup on this microbenchmark:

    function go(a) {
        for (const p of a) {
        }
    }
    const a = [];
    a.length = 1_000_000;
    go(a);
2023-12-08 00:54:05 +01:00
..
Intl LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Temporal LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AbstractOperations.cpp LibJS+LibWeb: More bringing module loading closer to spec 2023-12-03 20:46:55 +01:00
AbstractOperations.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
Accessor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Accessor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Agent.cpp LibJS: Skip test262 tests with the CanBlockIsFalse flag 2023-11-30 09:51:46 -05:00
Agent.h LibJS: Skip test262 tests with the CanBlockIsFalse flag 2023-11-30 09:51:46 -05:00
AggregateError.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AggregateError.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AggregateErrorConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AggregateErrorConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AggregateErrorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AggregateErrorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArgumentsObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArgumentsObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Array.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
Array.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
ArrayBuffer.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayBuffer.h LibJS: Remove unnecessary ThrowCompletionOr return types in TypedArray 2023-11-26 10:33:56 +01:00
ArrayBufferConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayBufferConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayBufferPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayBufferPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayConstructor.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
ArrayConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayIterator.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayIterator.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ArrayPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncFromSyncIterator.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
AsyncFromSyncIterator.h LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
AsyncFromSyncIteratorPrototype.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
AsyncFromSyncIteratorPrototype.h LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
AsyncFunctionConstructor.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
AsyncFunctionConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncFunctionDriverWrapper.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
AsyncFunctionDriverWrapper.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
AsyncFunctionPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncFunctionPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGenerator.cpp LibJS: Put Bytecode::CallFrame + register slots in a single allocation 2023-11-29 09:48:18 +01:00
AsyncGenerator.h LibJS: Put Bytecode::CallFrame + register slots in a single allocation 2023-11-29 09:48:18 +01:00
AsyncGeneratorFunctionConstructor.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
AsyncGeneratorFunctionConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGeneratorFunctionPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGeneratorFunctionPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGeneratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGeneratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncGeneratorRequest.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
AsyncIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AsyncIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
AtomicsObject.cpp LibJS: Stub out Atomics.notify 2023-11-30 09:51:46 -05:00
AtomicsObject.h LibJS: Stub out Atomics.notify 2023-11-30 09:51:46 -05:00
BigInt.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigInt.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BigIntPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BooleanPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
BoundFunction.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
BoundFunction.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
CanonicalIndex.h LibJS: Protect CanonicalIndex against double-to-integer overflow 2022-12-07 16:43:19 +00:00
ClassFieldDefinition.h LibJS: Include Environment.h directly in ClassFieldDefinition.h 2022-10-01 15:36:20 +01:00
CommonPropertyNames.h LibJS: Stub out Atomics.notify 2023-11-30 09:51:46 -05:00
Completion.cpp LibJS: Make intrinsics getters return NonnullGCPtr 2023-04-13 14:29:42 +02:00
Completion.h LibJS: Use a forwarding reference in ThrowCompletion constructor 2023-03-06 13:05:43 +00:00
ConsoleObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ConsoleObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DataView.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DataView.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DataViewConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DataViewConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DataViewPrototype.cpp LibJS: Remove unnecessary ThrowCompletionOr return types in TypedArray 2023-11-26 10:33:56 +01:00
DataViewPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Date.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Date.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DateConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DateConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DatePrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DatePrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DeclarativeEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DeclarativeEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStack.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStack.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStackConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStackConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStackPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
DisposableStackPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ECMAScriptFunctionObject.cpp LibJS: Add basic support for module code with top-level await 2023-12-06 12:58:04 +01:00
ECMAScriptFunctionObject.h LibJS: Add basic support for module code with top-level await 2023-12-06 12:58:04 +01:00
Environment.cpp LibJS+LibWeb: Normalize calls to Base::visit_edges in GC objects 2023-04-30 06:04:33 +02:00
Environment.h LibJS/JIT: Add fast path for cached GetVariable accesses 2023-11-07 11:33:04 +01:00
EnvironmentCoordinate.h LibJS/JIT: Add fast path for cached GetVariable accesses 2023-11-07 11:33:04 +01:00
Error.cpp LibJS: Make ExecutionContext::function_name a GCPtr<PrimitiveString> 2023-11-29 09:48:18 +01:00
Error.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ErrorConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ErrorConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ErrorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ErrorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ErrorTypes.cpp LibJS: Emit StringViews for ErrorType instances 2022-07-12 23:11:35 +02:00
ErrorTypes.h LibJS: Stub out Atomics.wait and Atomics.waitAsync 2023-11-30 09:51:46 -05:00
ExecutionContext.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
ExecutionContext.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
FinalizationRegistry.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FinalizationRegistry.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FinalizationRegistryConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FinalizationRegistryConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FinalizationRegistryPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FinalizationRegistryPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FunctionConstructor.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
FunctionConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FunctionEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FunctionEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
FunctionKind.h LibJS: Add a missing include to FunctionKind.h 2023-02-26 19:40:09 +01:00
FunctionObject.cpp LibJS+LibWeb: Devirtualize may_interfere_with_indexed_property_access() 2023-11-10 08:22:44 +01:00
FunctionObject.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
FunctionPrototype.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
FunctionPrototype.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
GeneratorFunctionConstructor.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
GeneratorFunctionConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GeneratorFunctionPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GeneratorFunctionPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GeneratorObject.cpp LibJS: Put Bytecode::CallFrame + register slots in a single allocation 2023-11-29 09:48:18 +01:00
GeneratorObject.h LibJS: Put Bytecode::CallFrame + register slots in a single allocation 2023-11-29 09:48:18 +01:00
GeneratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GeneratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GlobalEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GlobalEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GlobalObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
GlobalObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
IndexedProperties.cpp LibJS: Devirtualize is_simple_storage() 2023-11-10 08:22:44 +01:00
IndexedProperties.h LibJS: Expose offset of m_array_size 2023-11-10 08:22:44 +01:00
Intrinsics.cpp LibJS: Use a premade shape when creating iterator result objects 2023-12-08 00:54:05 +01:00
Intrinsics.h LibJS: Use a premade shape when creating iterator result objects 2023-12-08 00:54:05 +01:00
Iterator.cpp LibJS: Use a premade shape when creating iterator result objects 2023-12-08 00:54:05 +01:00
Iterator.h LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
IteratorConstructor.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
IteratorConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
IteratorHelper.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
IteratorHelper.h LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
IteratorHelperPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
IteratorHelperPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
IteratorPrototype.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
IteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
JobCallback.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
JobCallback.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
JSONObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
JSONObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Map.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Map.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapIterator.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapIterator.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MapPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
MathObject.cpp LibJS: Call builtins directly in the bytecode interpreter 2023-12-01 13:01:26 +01:00
MathObject.h LibJS: Call builtins directly in the bytecode interpreter 2023-12-01 13:01:26 +01:00
ModuleEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ModuleEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ModuleNamespaceObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ModuleNamespaceObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ModuleRequest.h LibJS+LibWeb: Another round of bringing module loading closer to spec 2023-12-03 20:46:55 +01:00
NativeFunction.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
NativeFunction.h LibJS: Make ExecutionContext::function_name a GCPtr<PrimitiveString> 2023-11-29 09:48:18 +01:00
NumberConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
NumberConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
NumberObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
NumberObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
NumberPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
NumberPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Object.cpp LibJS: Use a premade shape when creating iterator result objects 2023-12-08 00:54:05 +01:00
Object.h LibJS: Use a premade shape when creating iterator result objects 2023-12-08 00:54:05 +01:00
ObjectConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ObjectConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ObjectEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ObjectEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ObjectPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ObjectPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PrimitiveString.cpp LibJS: Don't die when making PrimitiveString from "" DeprecatedFlyString 2023-11-29 09:48:18 +01:00
PrimitiveString.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PrivateEnvironment.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PrivateEnvironment.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Promise.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Promise.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseCapability.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseCapability.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseConstructor.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
PromiseConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseJobs.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
PromiseJobs.h LibJS+LibWeb: Wrap raw JS::Cell*/& fields in GCPtr/NonnullGCPtr 2023-03-15 08:48:49 +01:00
PromisePrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromisePrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseReaction.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseReaction.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseResolvingElementFunctions.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseResolvingElementFunctions.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseResolvingFunction.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PromiseResolvingFunction.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
PropertyAttributes.h AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
PropertyDescriptor.cpp LibJS: Inline fast case for Value::to_{boolean,number,numeric,primitive} 2023-10-07 07:13:52 +02:00
PropertyDescriptor.h LibJS: Make Value::to_string_without_side_effects() infallible 2023-08-09 17:09:16 +02:00
PropertyKey.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
PrototypeObject.h LibJS: Port PrototypeObject::typed_this_value() to NonnullGCPtr 2023-04-14 09:59:29 +02:00
ProxyConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ProxyConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ProxyObject.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
ProxyObject.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
Realm.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
Realm.h LibJS: Call builtins directly in the bytecode interpreter 2023-12-01 13:01:26 +01:00
Reference.cpp LibJS: Make Value::to_string_without_side_effects() infallible 2023-08-09 17:09:16 +02:00
Reference.h LibJS: Do not coerce nullish references to unresolvable references 2023-07-06 21:36:13 +01:00
ReflectObject.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
ReflectObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpLegacyStaticProperties.cpp LibJS: Make Utf16String & related APIs infallible 2023-08-09 17:09:16 +02:00
RegExpLegacyStaticProperties.h LibJS: Make Utf16String & related APIs infallible 2023-08-09 17:09:16 +02:00
RegExpObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpPrototype.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
RegExpPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpStringIterator.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpStringIterator.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpStringIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
RegExpStringIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Set.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Set.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetIterator.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetIterator.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SetPrototype.cpp LibJS: Inline fast case for Value::to_{boolean,number,numeric,primitive} 2023-10-07 07:13:52 +02:00
SetPrototype.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
ShadowRealm.cpp LibJS+LibWeb: More bringing module loading closer to spec 2023-12-03 20:46:55 +01:00
ShadowRealm.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
ShadowRealmConstructor.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
ShadowRealmConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ShadowRealmPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
ShadowRealmPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Shape.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Shape.h Userland: Make bit-fields compatible with MSVC C++ ABI 2023-12-07 10:28:19 -07:00
SharedArrayBufferConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SharedArrayBufferConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SharedArrayBufferPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SharedArrayBufferPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringIterator.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringIterator.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringIteratorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringIteratorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringOrSymbol.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
StringPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
StringPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedError.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedError.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedErrorConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedErrorConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedErrorPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SuppressedErrorPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Symbol.cpp LibJS: Add spec comments to SymbolConstructor 2023-04-13 13:04:44 +02:00
Symbol.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolObject.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolObject.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
SymbolPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
TypedArray.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
TypedArray.h LibJS: Devirtualize Object::is_typed_array() 2023-11-26 19:32:51 +01:00
TypedArrayConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
TypedArrayConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
TypedArrayPrototype.cpp LibJS: Remove unnecessary ThrowCompletionOr return types in TypedArray 2023-11-26 10:33:56 +01:00
TypedArrayPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
Utf16String.cpp LibJS: Make Utf16String & related APIs infallible 2023-08-09 17:09:16 +02:00
Utf16String.h LibJS: Make Utf16String & related APIs infallible 2023-08-09 17:09:16 +02:00
Value.cpp LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00
Value.h LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
ValueInlines.h LibJS: Inline fast case for Value::to_{boolean,number,numeric,primitive} 2023-10-07 07:13:52 +02:00
ValueTraits.h LibJS: Make PrimitiveString::deprecated_string() infallible 2023-08-09 17:09:16 +02:00
VM.cpp LibJS: Stop converting between Object <-> IteratorRecord all the time 2023-12-07 14:06:34 +01:00
VM.h LibJS: Use LoadRequestedModules in the ad-hoc module loading path 2023-12-06 12:58:04 +01:00
WeakContainer.cpp
WeakContainer.h
WeakMap.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakMap.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakMapConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakMapConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakMapPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakMapPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRef.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRef.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRefConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRefConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRefPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakRefPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSet.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSet.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSetConstructor.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSetConstructor.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSetPrototype.cpp LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WeakSetPrototype.h LibJS: Segregate GC-allocated objects by type 2023-11-19 12:10:31 +01:00
WrapForValidIteratorPrototype.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
WrapForValidIteratorPrototype.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
WrappedFunction.cpp LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
WrappedFunction.h LibJS: Pass call/construct argument lists as ReadonlySpan<Value> 2023-11-29 09:48:18 +01:00