- 23 May, 2019 40 commits
-
-
Jaroslav Sevcik authored
Bug: chromium:963925 Change-Id: I92c6899ac188e0f3248e1cee93b1a7e28001e29b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627540Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> Commit-Queue: Sergiy Belozorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#61806}
-
Francis McCabe authored
This reverts commit f589d561. Reason for revert: failing win64 asan https://ci.chromium.org/p/v8/builders/ci/V8%20Win64%20ASAN/8653 Original change's description: > [torque] move class tests to unittests > > This avoids the generation of fake external classes. > > Bug: v8:7793 > Change-Id: I9744b299d3ec474d72b298b4f6143f95e345d1d9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1625991 > Reviewed-by: Simon Zünd <szuend@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61778} TBR=sigurds@chromium.org,tebbi@chromium.org,szuend@chromium.org Change-Id: I762f29a0d3212d2eabfafa48c0e46940d0e6f835 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7793 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1625863Reviewed-by: Francis McCabe <fgm@chromium.org> Commit-Queue: Francis McCabe <fgm@chromium.org> Cr-Commit-Position: refs/heads/master@{#61805}
-
Igor Sheludko authored
... which represent potentially compressed Object and MaybeObject values respectively. They provide methods for checking the smi/weak tags which don't require decompression and conversion to Smi/HeapObject combined with tag checks. The new classes should help to write a bit more efficient runtime (C++) code for the cases when we don't need the full decompressed value immediately. Drive-by-fix: fix ptr-compr build after Object::operator->() removal. Bug: v8:7703 Change-Id: I7a3d747ab6679120a2cca14e45b0d8bcf33fc496 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624786Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61804}
-
Ross McIlroy authored
On Android, we mmap the .so directly from the APK, therefore the file offset in this case refers to the offset of the .so in the APK, not the offset in the .so file itself. As such, moving the start position of the library based on this gives incorrect results when later symbolizing the addresses based on the .so. TBR=ulan@chromium.org Change-Id: I16f78c91106dc85334a8b0034c96b19442af7b05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627545Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61803}
-
Jaroslav Sevcik authored
Unfortunately, we still have to keep the field because GC mole and Torque do not support platform specific padding well (see http://crbug.com/v8/9287). Bug: v8:9183 Change-Id: I2210be4b8174c97bc82145605f9b862aac3bdc37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624791Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61802}
-
Michael Lippautz authored
Rework limit computation: - Model controller as static classes based on traits. - Compute growing factors for both controllers and pick the larger growing factor for both controllers. - Factor out limit computation in its own function. Bug: chromium:948807 Change-Id: Id466a66d7aa573de91ad388ea9218e9f6721d19a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627534 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61801}
-
Clemens Hammacher authored
Avoid casting to {void*} just for printing with "%p". Instead, use the standard "PRIxPTR", prefixed with "0x". This allows to directly print addresses. Drive-by: Remove other unneeded pointer casts; "%p" accepts any pointer type. R=mstarzinger@chromium.org Bug: v8:9183 Change-Id: I38c9575babaf04689fbd4568c90d593c5a591540 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627339 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61800}
-
Peter Marshall authored
Split the JSONConsumer into a base case and subclass so that we can implement different consumers without needing to repeat the code that deals with the finished semaphore and endpoint setters/getters. This makes it possible to add a test consumer that just holds the trace events in memory in a later CL. This CL re-uses the existing perfetto-consumer.h file to some extent, but it was accidentally leftover from a previous CL where we stopped using it and switched to the JSON consumer instead. Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Bug: v8:8339 Change-Id: I56c305833c8937da76a8e6defbe7a52c59b25106 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621938 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61799}
-
Clemens Hammacher authored
Since we currently require at least 1 MB of code to be potentially dead, we will never trigger GC for small modules. This CL lowers the threshold to 64 kB (plus 10% of committed code space), which has basically no effect on large modules, but ensures that we also run GCs on small modules. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: Ie76787af5ec7deb2e335303c2a98b81aeae6d4ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627341Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61798}
-
Frederik Gossen authored
The python script allows to inject hints into a Wasm module. Hints are injected into a newly created custom section named "compilationHints" that is used by the compiler to determine its compilation strategy. The section is placed after the functions section and before the code section. Bug: v8:9003 Change-Id: I531c57e4269ff9ae42b95be3515d2409627d6fb9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1619865 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61797}
-
Georg Schmid authored
Adds const information to store field accesses and uses it in load elimination Change-Id: I00765c854c95c955dabd78557463267b95f75eef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1611543Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Georg Schmid <gsps@google.com> Cr-Commit-Position: refs/heads/master@{#61796}
-
Clemens Hammacher authored
The {new_potentially_dead_code_size_} counter is used to decide when to trigger the next GC. Without resetting, we will trigger lots of GCs once the counter hits the limit, see "V8.WasmModuleNumberOfCodeGCsTriggered" counter. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I046b84d1f67f8cadb02fd3f876bb8c645e24edee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627340Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61795}
-
Andreas Haas authored
The indirect function table only exists for table 0 at the moment. Therefore we should initialize it only for table 0. R=mstarzinger@chromium.org Bug: chromium:964607 Change-Id: I88a3a5cb5ebec7f0456adc2cebdf5cc499b22761 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624804Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61794}
-
Milad Farazmand authored
Port 878ccb33 Original Commit Message: This CL was generated by an automatic clang AST rewriter using this matcher expression: callExpr( callee( cxxMethodDecl( hasName("operator->"), ofClass(isSameOrDerivedFrom("v8::internal::Object")) ) ), argumentCountIs(1) ) The "->" at the expression location was then rewritten to ".". R=clemensh@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ibe92f0332da0e478f213880462b4d3460f8260c0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627569Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61793}
-
Michael Starzinger authored
This makes the WebAssembly function constructor return a proper function object. Note that the returned object is not yet callable, only the prototype structure is in place. R=jkummerow@chromium.org TEST=mjsunit/wasm/type-reflection BUG=v8:7742 Change-Id: If6a3d0ae7078b5526606eef1b8fd4815353b850b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627343 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#61792}
-
Clemens Hammacher authored
The previous logic published whenever a TurboFan function was *finished*. Since we compile big functions first, the first TurboFan compilation can take quite some time, and we will only publish previously compiled Liftoff functions once that first TurboFan compilation is done. This CL changes that logic to publish all previous results *before* starting a TurboFan compilation. Drive-by: Add some trace events for interesting events. R=ahaas@chromium.org Bug: v8:8916, chromium:966351, chromium:944755 Change-Id: I669d6ea16bdc3f29685df153a7ed45875c28a843 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627532Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61791}
-
Yang Guo authored
NOPRESUBMIT=true TBR=mstarzinger@chromium.org Bug: v8:9247 Change-Id: I4cd6b79a1c2cba944f6f23caed59d4f1a4ee358b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624217 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61790}
-
Michaël Zasso authored
Fixes the following error caught by the Node.js CI: ../deps/v8/src/api.cc:8943:10: error: no viable conversion from returned value of type 'unique_ptr<v8::internal::MicrotaskQueue, default_delete<v8::internal::MicrotaskQueue>>' to function return type 'unique_ptr<v8::MicrotaskQueue, default_delete<v8::MicrotaskQueue>>' return microtask_queue; ^~~~~~~~~~~~~~~ Change-Id: Ic09dab46bb8f87a2b3b59f5836e0883bfe0e9681 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627533 Commit-Queue: Michaël Zasso <mic.besace@gmail.com> Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61789}
-
Toon Verwaest authored
This was accidentally dropped when unifying the internalization code. Change-Id: I2fd7127f85f0e3e9abd1ae834130f0c9da37363e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627529Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#61788}
-
Jakob Gruber authored
These were added to support specific cross-compile scenarios that should now be covered by the --target-os and --target-arch flags. Bug: v8:9103 Change-Id: I848f4f39cecc83f9ec8529c4f8855662059e3dc5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624219 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61787}
-
Clemens Hammacher authored
We now have a src/d8 directory, and having "d8" in .gitignore makes git ignore all new files in this directory, and also hides the directory in some IDEs. R=yangguo@chromium.org No-Try: true Change-Id: I3106378417c1fe9ebc369275eb52d5438cee8825 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627530Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61786}
-
Jakob Gruber authored
Split out embedded file writers for AIX, Windows, and macOS. These are no longer selected by compile-time defines (e.g. V8_OS_WIN, V8_TARGET_ARCH_X64) but by --target-os and --target-arch runtime flags. Bug: v8:9103 Change-Id: I5d5cac15e48b5c743d74f8a382606a6194ba7865 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624216 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61785}
-
Simon Zünd authored
This CL adds all fields to StackFrameInfo that are necessary to stringify a stack trace frame. This is another step towards disentangling symbolizing and serializing: - Symbolization collects all the necessary strings, numbers and flags for a stack trace frame. - Serialization turns the symbolized stack trace frame into a string. Drive-by: Moves the lazy initialization of StackFrameInfo into the private getter. Bug: v8:8742 Change-Id: Ic3e0fb6b3d0f0e260014af44380f1f30216b1b26 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627346Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61784}
-
Peter Marshall authored
I accidentally broke this with the last CL because the FYI bot does not block landing. Add initialization of perfetto when building with perfetto enabled. Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Bug: v8:8339 Change-Id: I10378b72bff731fac6caa75df37a355df4b804dc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627345 Auto-Submit: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61783}
-
Jakob Gruber authored
Introduce a single point to emit CodeCreateEvents for all builtins in Isolate::Init. At this location, we cover both the case of builtin generation (e.g. in mksnapshot) and deserialized builtins (in standard builds), whereas previously we only emitted events post-builtin-generation. In order to preserve behavior for bytecode handler events, pack the bytecode and operand scale into our existing builtin metadata table. Drive-by: Update way-out-of-date comment in the static initializer check. Bug: v8:8674 Change-Id: Iced8f73568e920846cde6f7b0a9c1e61844258ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627337 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61782}
-
Georg Neis authored
When encountering uninitialized feedback, mark the environment as dead such that we skip over the following bytecodes. Start full processing again when we reach a bytecode that is either a jump target or an exception handler entry. For now, don't support this optimization when compiling for OSR. Bug: v8:7790 Change-Id: I8177b7fa31ea43d205a2708310b0b0e67302001e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621930 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61781}
-
Peter Marshall authored
This is a reland of a03ed626 Removed the added test which was failing on win32. The test was unrelated to the CL; we can add it later. Original change's description: > [tracing] Add a configurable output stream for perfetto tracing > > Add the ability to provide perfetto with an output stream for the JSON > consumer rather than hardcode it. D8 will use this interface exclusively > once the old trace controller is removed. > > Also add a test for scope-managed trace events and their duration - this > was leftover from a previous CL. > > Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng > Bug: v8:8339 > Change-Id: I1c45e17e528b549a4cfdaecabd33c7ac4ab4af77 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1611801 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61753} TBR=jgruber@chromium.org, ulan@chromium.org Bug: v8:8339 Change-Id: I3442a4d111e12947c107e7d0c226ae934acd06e4 Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627334Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61780}
-
Georg Neis authored
Change-Id: Ib1233607236c991af0125f0197b9f89b10b4519d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1625990 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61779}
-
Tobias Tebbi authored
This avoids the generation of fake external classes. Bug: v8:7793 Change-Id: I9744b299d3ec474d72b298b4f6143f95e345d1d9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1625991Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#61778}
-
Georg Neis authored
We were sometimes printing the data pointer, and sometimes the handle location. This CL always uses the existing operator<< overload to print ObjectRefs, which currently means printing the data pointer. Bug: v8:7790 Change-Id: Ic5e2dad075678d2250bc0bcb170046d055680572 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1625989Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#61777}
-
Clemens Hammacher authored
R=leszeks@chromium.org No-Try: true Bug: v8:9183 Change-Id: I9372bdc5d3789a1bbc50ef2737577c4f60173bce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627342Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61776}
-
Frederik Gossen authored
The python script allows to read the custom section "compilationHints" from a Wasm module. It prints all hints to standard out. Bug: v8:9003 Change-Id: Ife8173e3267557d8adf4b6739f45060d386f25dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1619764 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61775}
-
Clemens Hammacher authored
This fixes compile errors after https://crrev.com/c/1624788. TBR=jkummerow@chromium.org No-Try: true Bug: v8:9183, v8:3770 Change-Id: I982e77e86389163f1549bbb02621b17972bbc158 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627336Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61774}
-
Peter Marshall authored
This is only used by ElementsKindToString(!). Implement ElementsKindToString with a big 'ol switch. The compiler will give us an error if we forget an ElementsKind. Bug: v8:9183 Change-Id: I1ed73ecac33aa7318a97f31794473d9afa16961c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624802 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61773}
-
Benedikt Meurer authored
The tests need to properly hold on to the original fast-mode map, otherwise the GC might clear that, and so the NormalizedMapCache lookup would fail due to that. Bug: chromium:963411, v8:9114, v8:9183, v8:9267 Change-Id: Ic41ed363959a5c182c74097767dc14c366076e17 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627333Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61772}
-
Benedikt Meurer authored
The `FunctionTemplate::SetHiddenPrototype()` API was deprecated beginning of the year and all uses in Node.js and Chrome have been removed appropriately. This removes the implementation of the method and the bit in the `FunctionTemplateInfo`, but retains the bit in the Map for now. That will be cleaned up as a second step later. Bug: v8:9183, v8:9267 Change-Id: I9aa2fc484b3321f4f42a29a0a38d72a6d30054a7 Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627329 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61771}
-
Benedikt Meurer authored
There's a `Map::IsDictionaryMap()` method in addition to the `Map::is_dictionary_map()`, which apparently do very different things: The former checks whether the instance type of the Map is in a certain range (FIRST_DICTIONARY_TYPE to LAST_DICTIONARY_TYPE), while the latter checks the `is_dictionary_map` bit (which means that the backing store for the properties of a JSObject is in slow mode). To make matters worse there's also `CodeStubAssembler::IsDictionaryMap()`, which does the bit check similar to `Map::is_dictionary_map()`. And to make matters even worse the FIRST_DICTIONARY_TYPE to LAST_DICTIONARY_TYPE range also contains instance types for classes that aren't subclass of `Dictionary` (despite a comment stating the opposite). So in conclusion it's best to remove the confusing `Map::IsDictionaryMap()` method, which is anyways wrong, and just test explicitly for `NameDictionary`, `NumberDictionary` or `GlobalDictionary` in the appropriate places. Bug: v8:9183 Change-Id: If35f73261e3cc96938ebf499bf32be3ec725288b Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627330 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61770}
-
Yang Guo authored
TBR=bmeurer@chromium.org,leszeks@chromium.org Bug: v8:9247 Change-Id: I8d14d0192ea8c705f8274e8e61a162531826edb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624220Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61769}
-
Clemens Hammacher authored
For consistency, {Object} members should only be accessed via ".". CL https://crrev.com/c/1624209 cleaned up the code base already. This CL removes the now dead operator. R=jkummerow@chromium.org Bug: v8:9183, v8:3770 Change-Id: I599dcd49d79bfc68f970fe872b64b3b2680cddd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624788 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#61768}
-
Yang Guo authored
R=szuend@chromium.org Change-Id: I7d8eb6f26dd0cecd749a66cd2b240ff27cbba985 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621927 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61767}
-