v8/test/inspector/runtime/query-objects-expected.txt
Ulan Degenbaev 5ee9cf874f [inspector] Fix handling of on-heap TypedArrays in queryObjects()
On-heap TypedArrays have empty ArrayBuffers that are not supposed to be
accessed directly. Such ArrayBuffers materialize properly when accessed
via their TypedArrays.

The queryObjects() sidesteps the bottleneck and finds empty ArrayBuffers
by iterating the heap. When preview TypedArrays are constructed for the
found ArrayBuffers, they get nullptr data pointers.

This CL converts all on-heap TypedArrays into off-heap TypedArrays in
queryObjects to make sure that all found ArrayBuffers are valid.

Bug: chromium:992442
Change-Id: Ie77d1e75aa2007b4a976c72206b9a4e215c9ef53
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2150601
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
Cr-Commit-Position: refs/heads/master@{#67174}
2020-04-16 13:34:57 +00:00

112 lines
2.3 KiB
Plaintext

Checks Runtime.queryObjects
Running test: testClass
Declare class Foo & store its constructor.
Create object with class Foo.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Foo,object
]
Create object with class Foo.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Foo,object
[1] : Foo,object
]
Running test: testDerivedNewClass
Declare class Foo & store its constructor.
Declare class Boo extends Foo & store its constructor.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Boo,object
]
Query objects with Boo prototype.
Dump each object constructor name.
[
]
Create object with class Foo
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Boo,object
[1] : Foo,object
]
Create object with class Boo
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Boo,object
[1] : Boo,object
[2] : Foo,object
]
Query objects with Boo prototype.
Dump each object constructor name.
[
[0] : Boo,object
]
Running test: testNewFunction
Declare Foo & store it.
Create object using Foo.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Foo,object
]
Create object using Foo.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Foo,object
[1] : Foo,object
]
Running test: testNonInspectable
Declare Foo & store it.
Create object using Foo.
Query objects with Foo prototype.
Dump each object constructor name.
[
[0] : Foo,object
]
Mark object as not inspectable.
Query objects with Foo prototype.
Dump each object constructor name.
[
]
Running test: testObjectCreate
Declare Object p & store it.
Create object using Object.create(p).
Query objects with p prototype.
Dump each object constructor name.
[
[0] : Object,object
]
Create object using Object.create(p).
Query objects with p prototype.
Dump each object constructor name.
[
[0] : Object,object
[1] : Object,object
]
Running test: testQueryObjectsWithFeedbackVector
Before/After difference: 1
Running test: testQueryObjectsWithArrayBuffer
Test that queryObjects does not crash for on-heap TypedArrays
Running test: testWithObjectGroup
Query for Array.prototype 3 times
Results since initial: 0
Results since initial: 1
Results since initial: 2
Released object group.
Results since initial: 0