- 30 Nov, 2017 1 commit
-
-
Marja Hölttä authored
Makes it easier to modify JSFunction; the failing asserts will tell which places need to be modified. Change-Id: I70c7cd0b89cf05964b4730990fb3d7f23927437a Reviewed-on: https://chromium-review.googlesource.com/781689Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#49732}
-
- 29 Nov, 2017 2 commits
-
-
Michael Achenbach authored
This reverts commit 99cb4d35. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/16445 Original change's description: > [cleanup] Harden the SubString CSA/Runtime implementations. > > Remove the self-healing for invalid parameters in the > CodeStubAssembler::SubString helper and the %SubString runtime function, > which is used as a fallback for the CodeStubAssembler implementation. > All call sites must do appropriate parameter validation anyways now that > the self-hosted JavaScript builtins using these helpers are gone, and we > have proper contracts with the uses. > > Also remove the context parameter from the CodeStubAssembler::SubString > method, which is unnecessary, since this can no longer throw an > exception. > > Bug: v8:5269, v8:6936, v8:7109, v8:7137 > Change-Id: I19d93bad5f41faa0561c4561a48f78fcba99a549 > Reviewed-on: https://chromium-review.googlesource.com/795720 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49702} TBR=jgruber@chromium.org,bmeurer@chromium.org Change-Id: I2900b5f087e78f1d321724f03bd063a5ff094183 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5269, v8:6936, v8:7109, v8:7137 Reviewed-on: https://chromium-review.googlesource.com/796150Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49703}
-
Benedikt Meurer authored
Remove the self-healing for invalid parameters in the CodeStubAssembler::SubString helper and the %SubString runtime function, which is used as a fallback for the CodeStubAssembler implementation. All call sites must do appropriate parameter validation anyways now that the self-hosted JavaScript builtins using these helpers are gone, and we have proper contracts with the uses. Also remove the context parameter from the CodeStubAssembler::SubString method, which is unnecessary, since this can no longer throw an exception. Bug: v8:5269, v8:6936, v8:7109, v8:7137 Change-Id: I19d93bad5f41faa0561c4561a48f78fcba99a549 Reviewed-on: https://chromium-review.googlesource.com/795720Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49702}
-
- 28 Nov, 2017 1 commit
-
-
Junliang Yan authored
On 64-bit architectures, an IntPtr-sized write of Name::kEmptyHashField will properly initialize the relevant Int32-sized payload of Name::kHashFieldOffset, as well as zero out the unused portion of the slot. Bug: v8:7065 Change-Id: I93113c9744377e76cd0d264568c49b31a1e822a1 Reviewed-on: https://chromium-review.googlesource.com/788530Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49668}
-
- 27 Nov, 2017 1 commit
-
-
Michal Majewski authored
Introduce new runtime flag that forces to always use slow path for regex, promise and array builtins. It works in DEBUG or with new compile time flag ENABLE_FASTSLOW_SWITCH. It will be used in the fast/slow path fuzzer or as a testing variant to ensure that slow path implementation behave equivalent to corresponding fast paths (where applicable). Bug: v8:7120 Change-Id: Ia2a4ab7aca5051e852723782c529bd2e8e5925ca Reviewed-on: https://chromium-review.googlesource.com/787291 Commit-Queue: Michał Majewski <majeski@google.com> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49642}
-
- 23 Nov, 2017 2 commits
-
-
jgruber authored
- Fast path for same type source typed array - Move previous CPP implementation into a runtime function "TypedArraySet" - Remove parts covered by the TFJ - Basic receiver, offset, source checks - Handling of same type source typed array Bug: v8:3590 Change-Id: I0f19d961424c30cc8bbcb8648b623e7e6dfa33f4 Reviewed-on: https://chromium-review.googlesource.com/786414Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49608}
-
Igor Sheludko authored
This simplifies handling of DescriptorArray objects in deserializer. Bug: v8:5799 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ie4f9c6903afd8273d6320e6b0e0b05231db6cc00 Reviewed-on: https://chromium-review.googlesource.com/785676 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49605}
-
- 22 Nov, 2017 2 commits
-
-
Igor Sheludko authored
Bug: v8:5799 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iff62cf07d85b48975d7a21da388bbf6addeb56f1 Reviewed-on: https://chromium-review.googlesource.com/781633 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#49589}
-
Marja Hölttä authored
Bug: Change-Id: Ic872ea78511f0ef3e8cea67b971162b71790a039 Reviewed-on: https://chromium-review.googlesource.com/781690Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#49564}
-
- 21 Nov, 2017 1 commit
-
-
Igor Sheludko authored
The unused properties fields number is calculatable via used in-object properties count and we can drop it now. Bug: chromium:774644 Change-Id: I7388af7772a8e793593fabc46527886cf2e36095 Reviewed-on: https://chromium-review.googlesource.com/781465Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#49542}
-
- 20 Nov, 2017 3 commits
-
-
Benedikt Meurer authored
We can just use the same trick here that we use with TurboFan and load the (signaling) NaN value out of the canonical tagged root. This improves the loop for initializing double backing stores by hoisting the load of the constant value out of the loop. Bug: v8:5267 Change-Id: Idcf07c0e910ecc085a8b89225613f0a8fb50a414 Reviewed-on: https://chromium-review.googlesource.com/778979Reviewed-by:
Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#49480}
-
Benedikt Meurer authored
Bug: v8:5267 Change-Id: I2338702ef69298bc95c47dcfedf7ef7632a2bf7f Reviewed-on: https://chromium-review.googlesource.com/778842Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49478}
-
Benedikt Meurer authored
The "array protector" now guards the Object.prototype, the Array.prototype and the String.prototype, so the name was a bit misleading nowadays. So the new name "no elements protector" was chosen. Bug: v8:6936, v8:7014, v8:7027 Change-Id: I9a9d7caa2caf0ac9e78cc6658de2f0506970dfa2 Reviewed-on: https://chromium-review.googlesource.com/778162Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49471}
-
- 17 Nov, 2017 1 commit
-
-
Ulan Degenbaev authored
The layout descriptor helper computes the object header size using map->instance_size() and map->GetInObjectProperties(). It races with finalization of slack tracking, which changes both the instance size and the in-object properties count. This patch replaces the in-object properties count byte in the map with the byte that stores the start offset of in-object properties. The new byte can be used in the layout descriptor to compute the object header size and it is immutable. This patch also renames InstanceSize to InstanceSizeInWords where the instance size is represented in words. Bug: chromium:786069, chromium:694255 Change-Id: I4b48c6944d3fe8a950bd7b0ba43d75216b177a78 Reviewed-on: https://chromium-review.googlesource.com/776720 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#49461}
-
- 15 Nov, 2017 3 commits
-
-
Toon Verwaest authored
Bug: v8:7065 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I7882b719f72561cd22b874eae239000936fad35c Reviewed-on: https://chromium-review.googlesource.com/768874 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49381}
-
Jakob Gruber authored
The backing store fixed array for collections needs to be allocated in LOS if it exceeds the maximum regular heap object size. Drive-by-fix: Only store fixed array map once as per TODO. Bug: chromium:784862 Change-Id: I6b4dd2e45153ae107171e21bc7448e0d9b54b0ed Reviewed-on: https://chromium-review.googlesource.com/771150Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49378}
-
Pierre Langlois authored
The CodeStubAssembler's BitwiseOp method used by the interpreter and Number related builtins would unconditionnaly mask the shift amount operand with 0x1f. However some targets' shift implementation may already do it. This removes 24 `and` instructions from the snapshot on Arm64. Bug: Change-Id: If0a720c7ea69fea46c9b31dd55903603f058d481 Reviewed-on: https://chromium-review.googlesource.com/765971Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#49371}
-
- 14 Nov, 2017 2 commits
-
-
Igor Sheludko authored
.. by using macros for defining field offsets. Bug: v8:5799 Change-Id: Id76e81bedb8f348b2efaa1d553bebac0ff90b474 Reviewed-on: https://chromium-review.googlesource.com/768382Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#49351}
-
peterwmwong authored
- Remove weak-collection.js - Adds TFJ builtins for WeakSet and WeakMap constructors - Unified helpers and constructor behavior into a BaseCollectionsAssembler - Fast paths for... - unmodified constructor function - argument is a fast JS array - entries are fast JS arrays, for Map/WeakMap - no arguments passed Quick benchmarks shows significant improvements (1.12x - 5.7x!) for ALL collection constructors (weak and non-weak): https://github.com/peterwmwong/v8-perf/blob/master/weakcollection-constructor/README.md More could be done for performance. Currently we always call out to JS to add entries, if we knew the prototype was unmodified, we could call the builtins directly. Bug: v8:5049, v8:6604 Change-Id: Id7912c1eed5bcf512df7fd6238f04166a8a5937e Reviewed-on: https://chromium-review.googlesource.com/760385Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49343}
-
- 13 Nov, 2017 2 commits
-
-
Camillo Bruni authored
This CL fixes uses of HandleSlackTracking which previously would write fields twice. Additional checks ensure that only proper initial maps are used with slack tracking. Change-Id: Ifb03297635ed6b873eb8b27fec9794c9d36b71b6 Reviewed-on: https://chromium-review.googlesource.com/664810Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#49331}
-
Camillo Bruni authored
The only empty PropertyArray is the empty_property_array object on the isolate. Allowing empty PropertyArrays causes the turbofan to ignore the existing hash when growing the backing store again. We currently only end up with the empty PropertyArray when following back transitions. Bug: chromium:781218, chromium:783713 Change-Id: If41dd09b965cdc8d957b9ca50ba3c8a7f4254769 Reviewed-on: https://chromium-review.googlesource.com/763230 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#49318}
-
- 07 Nov, 2017 2 commits
-
-
Yang Guo authored
Use (Seeded)NumberDictionary instead. Change-Id: I426cd0a33df7d47fe4fec0c108be5632ef7c0f19 Reviewed-on: https://chromium-review.googlesource.com/756697Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49179}
-
Yang Guo authored
This change - adds new maps for elements, global, and named dictionaries. - adds support to embed these dictionaries in the startup snapshot. - adds support to embed these dictionaries in the code cache. - refactors the rehashing logic. TBR=mstarzinger@chromium.org, ishell@chromium.org, jgruber@chromium.org Bug: v8:6593 Change-Id: I2455fe2a9cc6e93247940de99de5f124c2ada137 Reviewed-on: https://chromium-review.googlesource.com/756693Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49167}
-
- 06 Nov, 2017 2 commits
-
-
Adam Klein authored
This reverts commit 3877bf6f. Reason for revert: failed compilation on Win64/clang: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20clang/builds/9015 Original change's description: > Snapshot: support rehashing property and element dictionaries. > > This change > - adds new maps for elements, global, and named dictionaries. > - adds support to embed these dictionaries in the startup snapshot. > - adds support to embed these dictionaries in the code cache. > - refactors the rehashing logic. > > R=ishell@chromium.org, jgruber@chromium.org, mstarzinger@chromium.org > > Bug: v8:6593 > Change-Id: I8d9a7ba7145f1af4e6e15301a4d5611f07c77f33 > Reviewed-on: https://chromium-review.googlesource.com/753323 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49155} TBR=yangguo@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,ishell@chromium.org Change-Id: I0b45d2d07da97b9a7953abf4ad24eec4ea944306 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6593 Reviewed-on: https://chromium-review.googlesource.com/755493Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#49156}
-
Yang Guo authored
This change - adds new maps for elements, global, and named dictionaries. - adds support to embed these dictionaries in the startup snapshot. - adds support to embed these dictionaries in the code cache. - refactors the rehashing logic. R=ishell@chromium.org, jgruber@chromium.org, mstarzinger@chromium.org Bug: v8:6593 Change-Id: I8d9a7ba7145f1af4e6e15301a4d5611f07c77f33 Reviewed-on: https://chromium-review.googlesource.com/753323Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49155}
-
- 03 Nov, 2017 1 commit
-
-
Benedikt Meurer authored
This extends the support in TurboFan and the ICs for OOB loads to also apply to typed arrays and receivers whose prototype chain is protected by the "no elements" protector (aka the Array protector). TurboFan will generate code to materialize undefined instead when it sees a load that has the OOB bit set and add an appropriate code dependency on the global protector. For typed arrays it doesn't even need to check the global protector since elements are never looked up in the prototype chain for typed arrays. In the simple micro-benchmark from the bug we go from testInBounds: 103 ms. testOutOfBounds: 289 ms. to testInBounds: 103 ms. testOutOfBounds: 102 ms. which fixes the 3x slowdown and thus addresses the performance cliff. In general it's still beneficial to make sure that you don't access out of bounds, especially once we introduce a bounds check elimination pass to TurboFan. This also seems to improve the jQuery benchmark on the Speedometer test suite by like 1-2% on average. And the SixSpeed rest benchmarks go from rest-es5: 25 ms. rest-es6: 23 ms. to rest-es5: 6 ms. rest-es6: 4 ms. so a solid 5.7x improvement there. Bug: v8:6936, v8:7014, v8:7027 Change-Id: Ie99699c69cc40057512e72fd40ae28107216c423 Reviewed-on: https://chromium-review.googlesource.com/750089 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#49095}
-
- 02 Nov, 2017 3 commits
-
-
Yang Guo authored
Proxy's call trap can be used to cause recursion. R=bmeurer@chromium.org, tebbi@chromium.org Bug: chromium:779344 Change-Id: I19c989f618f7230028ebe18c3415bc3f4bd72b93 Reviewed-on: https://chromium-review.googlesource.com/743782Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49069}
-
Benedikt Meurer authored
This partially reverts commit aaebbbaa, which removed the --string-slices flag. We reintroduce the flag as a build time flag for an experiment to gather information of how much SliceStrings help with throughput and effective memory use. Bug: v8:7025 Change-Id: I529da91bb7501fe93d83891abf560710f3ecb9d0 Reviewed-on: https://chromium-review.googlesource.com/750681Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49068}
-
Benedikt Meurer authored
This CL adds support for two byte string comparisons to the StringEqual builtin, which so far was bailing out to the generic %StringEqual runtime function whenever any two-byte string was involved. This made comparisons that involved two-byte strings, either comparing them to one-byte strings or comparing two two-byte strings, up to 3x slower than if only one-byte strings were involved. With this change, all direct string (SeqString or ExternalString) equality checks are roughly on par now, and the weird performance cliff is gone. On the micro-benchmark from the bug we go from stringEqualBothOneByteSeqString: 162 ms. stringEqualTwoByteAndOneByteSeqString: 446 ms. stringEqualOneByteAndTwoByteSeqString: 438 ms. stringEqualBothTwoByteSeqString: 472 ms. to stringEqualBothOneByteSeqString: 151 ms. stringEqualTwoByteAndOneByteSeqString: 158 ms. stringEqualOneByteAndTwoByteSeqString: 166 ms. stringEqualBothTwoByteSeqString: 160 ms. which is the desired result. On the esprima test of the web-tooling-benchmark we seem to improve by 1-2%, which corresponds to the savings of going to the runtime for many StringEqual comparisons. Drive-by-cleanup: Introduce LoadAndUntagStringLength helper into the CSA with proper typing to avoid the unnecessary shifts on 64-bit platforms when keeping the length tagged initially in StringEqual. Bug: v8:4913, v8:6365, v8:6371, v8:6936, v8:7022 Change-Id: I566f4b80e217513775ffbd35e0480154abf59b27 Reviewed-on: https://chromium-review.googlesource.com/749223Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49067}
-
- 30 Oct, 2017 1 commit
-
-
peterwmwong authored
- Add WeakMapPrototypeSet and WeakSetPrototypeAdd TFJ builtins - Fast paths for... 1) existing key 2) new key when ObjectHashTable has a "sufficient capacity" - Create WeakCollectionsBuiltinsAssembler to consolidate common WeakMap/WeakSet code generation - Convert existing WeakMapLookupHashIndex to use WeakCollectionsBuiltinsAssembler Some quick benchmarks shows performance gains of... - 1.56x - 1.98x for WeakMap constructor - 1.66x - 2.06x for WeakSet constructor - 1.50x - 2.11x for WeakMap.p.set - 1.54x - 2.26x for WeakSet.p.add https: //github.com/peterwmwong/v8-perf/blob/master/weakcollection-set/README.md Bug: v8:5049, v8:6604 Change-Id: I3499d46be6b2b3b1d8d46720ebe86cc5142ee542 Reviewed-on: https://chromium-review.googlesource.com/737935 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#49036}
-
- 28 Oct, 2017 1 commit
-
-
Jakob Kummerow authored
Bug: v8:6791 Change-Id: Id85bd701eaa574eea1335cdc916323810616cef9 Reviewed-on: https://chromium-review.googlesource.com/738936 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#49014}
-
- 26 Oct, 2017 1 commit
-
-
Leszek Swirski authored
Add the --trace-feedback-updates flag (disabled by default, enabled by the v8_enable_trace_feedback_updates gn arg), which traces updates to feedback slots. Change-Id: Ib8f02f958e2adf04abda5d4ed680e29fa04895ab Reviewed-on: https://chromium-review.googlesource.com/725814Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#48983}
-
- 25 Oct, 2017 4 commits
-
-
Jakob Kummerow authored
and use a newly-introduced "enum class Operation" in all other places that so far passed Token::Values around. Also delete some related dead code along the way. Bug: v8:6921 Change-Id: I062f396d304aa62298cfeff202e3132a4a5597c1 Reviewed-on: https://chromium-review.googlesource.com/736851 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48944}
-
Benedikt Meurer authored
Have JSProxy and JSGlobalProxy use the properties or hash technology like we use for all other JSReceivers. Also unify and simplify the code dealing with these hashes. Bug: v8:6344, v8:6911 Change-Id: Ic995639c74211ba6f33acd73428b8c6d95bf7919 Reviewed-on: https://chromium-review.googlesource.com/737833Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48930}
-
Georg Neis authored
E.g. use TrueConstant() instead of BooleanConstant(true) and NullConstant() instead of HeapConstant(factory...null_value()). R=jkummerow@chromium.org Bug: Change-Id: I0588d71940d8baf289eb8f8e6c8d20aa717d57f6 Reviewed-on: https://chromium-review.googlesource.com/735681 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48911}
-
Georg Neis authored
R=jkummerow@chromium.org Bug: v8:6791 Change-Id: I55c11c1328c92983286a8173795ce38f0b1e9e8e TBR: yangguo@chromium.org Reviewed-on: https://chromium-review.googlesource.com/735322Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#48897}
-
- 24 Oct, 2017 2 commits
-
-
Camillo Bruni authored
Bug: v8:6921 Change-Id: Icbbb7c08b9ff9f20339988770d88d96653a9ddef Reviewed-on: https://chromium-review.googlesource.com/718656 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48890}
-
Georg Neis authored
... mainly by adapting Object::Compare and CodeStubAssembler::RelationalComparison. TBR=rmcilroy@chromium.org Change-Id: I34448d45b4950b9318263c4a667aa9db7d77232d Bug: v8:6791 Reviewed-on: https://chromium-review.googlesource.com/730730 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48873}
-
- 23 Oct, 2017 1 commit
-
-
jgruber authored
Fixes the implementation of step 9 in the Proxy's internal [[Get]] method: Let targetDesc be ? target.[[GetOwnProperty]](P) If P is an accessor, this should not result in a call to the getter. Likewise in [[Set]] and [[Has]]. https://tc39.github.io/ecma262/#sec-proxy-object-internal-methods-and-internal-slots-get-p-receiver Bug: chromium:776338 Change-Id: I2652ffab2b3e4c38de00a82b8419192fdc768951 Reviewed-on: https://chromium-review.googlesource.com/732897Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#48825}
-
- 20 Oct, 2017 1 commit
-
-
Jan Krems authored
Use an intrinsic for GetImportMetaObject and generate bytecode for the case where import.meta has been initialized already. This way the runtime method will only be called once per module. Bug: v8:6693 Change-Id: If661e88e6accfb1c5795e37a80582d04f6dd87dd Reviewed-on: https://chromium-review.googlesource.com/716536Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#48801}
-