- 12 Jun, 2015 1 commit
-
-
wingo authored
R=rossberg@chromium.org LOG=N BUG=498811 Review URL: https://codereview.chromium.org/1179893002 Cr-Commit-Position: refs/heads/master@{#28988}
-
- 11 Jun, 2015 5 commits
-
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1178123003 Cr-Commit-Position: refs/heads/master@{#28973}
-
Toon Verwaest authored
BUG=v8:4137 LOG=n R=ishell@chromium.org Review URL: https://codereview.chromium.org/1173283004. Cr-Commit-Position: refs/heads/master@{#28965}
-
ishell authored
Revert of Replace SetObjectProperty / DefineObjectProperty with less powerful alternatives where relevant. (patchset #3 id:40001 of https://codereview.chromium.org/1178503004/) Reason for revert: Blocks revert of https://codereview.chromium.org/1175973002 Original issue's description: > Replace SetObjectProperty / DefineObjectProperty with less powerful alternatives where relevant. > > @yangguo: please look at the debugger part of the CL. > @ishell: please look at the rest. > > Additionally: > - Ensure the LookupIterator for named properties does not accidentally get indexes in. > - Fix the return value for typed array assignments to be the incoming value. > > BUG=v8:4137 > LOG=n > > Committed: https://crrev.com/15aa811f8fe2708a757c3b53ca89db736aa8b222 > Cr-Commit-Position: refs/heads/master@{#28954} TBR=yangguo@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4137 Review URL: https://codereview.chromium.org/1181733002 Cr-Commit-Position: refs/heads/master@{#28957}
-
verwaest authored
@yangguo: please look at the debugger part of the CL. @ishell: please look at the rest. Additionally: - Ensure the LookupIterator for named properties does not accidentally get indexes in. - Fix the return value for typed array assignments to be the incoming value. BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1178503004 Cr-Commit-Position: refs/heads/master@{#28954}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1172683003 Cr-Commit-Position: refs/heads/master@{#28946}
-
- 08 Jun, 2015 3 commits
-
-
erikcorry authored
Revert of Only record one in n line endings to save space. (patchset #4 id:60001 of https://codereview.chromium.org/1137683003/) Reason for revert: Test failures https://storage.googleapis.com/chromium-layout-test-archives/V8-Blink_Win/345/layout-test-results/results.html Original issue's description: > Only record one in n line endings to save space. > > R=yangguo@chromium.org > BUG= > > Committed: https://crrev.com/b3d4bce593559276e68d3d7d9168f4351e4e5090 > Cr-Commit-Position: refs/heads/master@{#28837} TBR=yangguo@chromium.org,erik.corry@gmail.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1155683010 Cr-Commit-Position: refs/heads/master@{#28841}
-
erikcorry authored
R=yangguo@chromium.org BUG= Review URL: https://codereview.chromium.org/1137683003 Cr-Commit-Position: refs/heads/master@{#28837}
-
jochen authored
R=hpayer@chromium.org BUG= Review URL: https://codereview.chromium.org/1135353003 Cr-Commit-Position: refs/heads/master@{#28834}
-
- 04 Jun, 2015 2 commits
-
-
arv authored
We used to only store the uses_super_property in the preparse data logger. Let the logger use NeedsHomeObject instead. BUG=v8:3768 LOG=N R=wingo, adamk Review URL: https://codereview.chromium.org/1164073003 Cr-Commit-Position: refs/heads/master@{#28806}
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=bmeurer@chromium.org, rmcilroy@chromium.org, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1162993006 Cr-Commit-Position: refs/heads/master@{#28801}
-
- 03 Jun, 2015 3 commits
-
-
bbudge authored
LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1153373003 Cr-Commit-Position: refs/heads/master@{#28797}
-
binji authored
This is behind the flag "--harmony-atomics", and it only works on SharedArrayBuffers. This implementation only includes the runtime functions. The TurboFan implementation will be next. The draft spec for Atomics can be found here: https://docs.google.com/document/d/1NDGA_gZJ7M7w1Bh8S0AoDyEqwDdRh4uSoTPSNn77PFk BUG= LOG=n Review URL: https://codereview.chromium.org/1162503002 Cr-Commit-Position: refs/heads/master@{#28796}
-
bmeurer authored
Revert of Embedded constant pools. (patchset #12 id:220001 of https://codereview.chromium.org/1131783003/) Reason for revert: Breaks Linux nosnap cctest/test-api/FastReturnValuesWithProfiler, see http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%202/builds/609/steps/Check/logs/FastReturnValuesWithP.. Original issue's description: > Add support for Embedded Constant Pools for PPC and Arm > > Embed constant pools within their corresponding Code > objects. > > This removes support for out-of-line constant pools in favor > of the new approach -- the main advantage being that it > eliminates the need to allocate and manage separate constant > pool array objects. > > Currently supported on PPC and ARM. Enabled by default on > PPC only. > > This yields a 6% improvment in Octane on PPC64. > > R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com > BUG=chromium:478811 > LOG=Y > > Committed: https://crrev.com/a9404029343d65f146e3443f5280c40a97e736af > Cr-Commit-Position: refs/heads/master@{#28770} TBR=rmcilroy@chromium.org,ishell@chromium.org,rodolph.perfetta@arm.com,mbrandy@us.ibm.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:478811 Review URL: https://codereview.chromium.org/1155703006 Cr-Commit-Position: refs/heads/master@{#28772}
-
- 02 Jun, 2015 6 commits
-
-
mbrandy authored
Embed constant pools within their corresponding Code objects. This removes support for out-of-line constant pools in favor of the new approach -- the main advantage being that it eliminates the need to allocate and manage separate constant pool array objects. Currently supported on PPC and ARM. Enabled by default on PPC only. This yields a 6% improvment in Octane on PPC64. R=danno@chromium.org, svenpanne@chromium.org, bmeurer@chromium.org, rmcilroy@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG=chromium:478811 LOG=Y Review URL: https://codereview.chromium.org/1131783003 Cr-Commit-Position: refs/heads/master@{#28770}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1157093003 Cr-Commit-Position: refs/heads/master@{#28762}
-
ishell authored
BUG=chromium:493568 LOG=N Review URL: https://codereview.chromium.org/1158023003 Cr-Commit-Position: refs/heads/master@{#28759}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1153583006 Cr-Commit-Position: refs/heads/master@{#28757}
-
verwaest authored
This also fixes issues with - kMaxUint32 being a valid length but not index cornercases - exotic integer objects masking "exotic indexes" even though its in the prototype chain - concating of holey sloppy arguments BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1159433003 Cr-Commit-Position: refs/heads/master@{#28754}
-
ishell authored
BUG= Review URL: https://codereview.chromium.org/1156993018 Cr-Commit-Position: refs/heads/master@{#28752}
-
- 01 Jun, 2015 3 commits
-
-
ishell authored
Dictionary customization should be implemented in respective shape class. Review URL: https://codereview.chromium.org/1160813009 Cr-Commit-Position: refs/heads/master@{#28738}
-
ishell authored
Review URL: https://codereview.chromium.org/1165603002 Cr-Commit-Position: refs/heads/master@{#28737}
-
ishell authored
This updates Dictionary classes hierarchy and introduces GlobalDictionary class but it is not used yet. Review URL: https://codereview.chromium.org/1163673003 Cr-Commit-Position: refs/heads/master@{#28732}
-
- 29 May, 2015 1 commit
-
-
yangguo authored
R=mstarzinger@chromium.org BUG=chromium:492522 LOG=Y Review URL: https://codereview.chromium.org/1154163006 Cr-Commit-Position: refs/heads/master@{#28696}
-
- 28 May, 2015 1 commit
-
-
mstarzinger authored
This introduces a conservative prediction for each exception handler whether it will locally catch an exception or re-throw it to outside the code bondaries. It will allow for a more intuitive prediction of whether an exception is considered "caught" or "uncaught". R=bmeurer@chromium.org,yangguo@chromium.org BUG=chromium:492522 LOG=N Review URL: https://codereview.chromium.org/1158563008 Cr-Commit-Position: refs/heads/master@{#28681}
-
- 27 May, 2015 2 commits
-
-
jochen authored
Also deprecate ForceSet BUG=chromium:475206 R=adamk@chromium.org,verwaest@chromium.org LOG=y Review URL: https://codereview.chromium.org/1154233003 Cr-Commit-Position: refs/heads/master@{#28660}
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/1152153004 Cr-Commit-Position: refs/heads/master@{#28658}
-
- 26 May, 2015 1 commit
-
-
erikcorry authored
* Hash code is now just done with a private own symbol instead of the hidden string, which predates symbols. * In the long run we should do all hidden properties this way and get rid of the hidden magic 0-length string with the zero hash code. The advantages include less complexity and being able to do things from JS in a natural way. * Initially, the performance of weak set regressed, because it's a little harder to do the lookup in C++. Instead of heroics in C++ to make things faster I moved some functionality into JS and got the performance back. JS is supposed to be good at looking up named properties on objects. * This also changes hash codes of Smis so that they are always Smis. Performance figures are in the comments to the code review. Summary: Most of js-perf-test/Collections is neutral. Set and Map with object keys are 40-50% better. WeakMap is -5% and WeakSet is +9%. After the measurements, I fixed global proxies, which cost 1% on most tests and 5% on the weak ones :-(. In the code review comments is a patch with an example of the heroics we could do in C++ to make lookup faster (I hope we don't have to do this. Instead of checking for the property, then doing a new lookup to insert it, we could do one lookup and handle the addition immediately). With the current benchmarks above this buys us nothing, but if we go back to doing more lookups in C++ instead of in stubs and JS then it's a win. In a similar vein we could give the magic zero hash code to the hash code symbol. Then when we look up the hash code we would sometimes see the table with all the hidden properties. This dual use of the field for either the hash code or the table with all hidden properties and the hash code is rather ugly, and this CL gets rid of it. I'd be loath to bring it back. On the benchmarks quoted above it's slightly slower than moving the hash code lookup to JS like in this CL. One worry is that the benchmark results above are more monomorphic than real world code, so may be overstating the performance benefits of moving to JS. I think this is part of a general issue we have with handling polymorphic code in JS and any solutions there will benefit this solution, which boils down to regular property access. Any improvement there will lift all boats. R=adamk@chromium.org, verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1149863005 Cr-Commit-Position: refs/heads/master@{#28622}
-
- 22 May, 2015 5 commits
-
-
binji authored
This adds a new external type (v8::SharedArrayBuffer) that uses a JSArrayBuffer under the hood. It can be distinguished from an ArrayBuffer by the newly-added is_shared() bit. Currently there is no difference in functionality between a SharedArrayBuffer and an ArrayBuffer. However, a future CL will add the Atomics API, which is only available on an SharedArrayBuffer. All non-atomic accesses are identical to ArrayBuffer accesses. LOG=N BUG= Review URL: https://codereview.chromium.org/1136553006 Cr-Commit-Position: refs/heads/master@{#28594}
-
yangguo authored
Revert of Implement SharedArrayBuffer (patchset #7 id:120001 of https://codereview.chromium.org/1136553006/) Reason for revert: breaks build Original issue's description: > Implement SharedArrayBuffer. > > This adds a new external type (v8::SharedArrayBuffer) that uses a JSArrayBuffer under the hood. It can be distinguished from an ArrayBuffer by the newly-added is_shared() bit. > > Currently there is no difference in functionality between a SharedArrayBuffer and an ArrayBuffer. However, a future CL will add the Atomics API, which is only available on an SharedArrayBuffer. All non-atomic accesses are identical to ArrayBuffer accesses. > > BUG= > > Committed: https://crrev.com/57170bff7baf341c666252a7f6a49e9c08d51263 > Cr-Commit-Position: refs/heads/master@{#28588} TBR=jarin@chromium.org,jochen@chromium.org,binji@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1149203003 Cr-Commit-Position: refs/heads/master@{#28589}
-
binji authored
This adds a new external type (v8::SharedArrayBuffer) that uses a JSArrayBuffer under the hood. It can be distinguished from an ArrayBuffer by the newly-added is_shared() bit. Currently there is no difference in functionality between a SharedArrayBuffer and an ArrayBuffer. However, a future CL will add the Atomics API, which is only available on an SharedArrayBuffer. All non-atomic accesses are identical to ArrayBuffer accesses. BUG= Review URL: https://codereview.chromium.org/1136553006 Cr-Commit-Position: refs/heads/master@{#28588}
-
rossberg authored
Also, add more literal tests. R=dslomov@chromium.org BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1145213005 Cr-Commit-Position: refs/heads/master@{#28579}
-
mstarzinger authored
This just delegates to SharedFunctionInfo::optimization_disabled and was primarily used for assertions. Removing it due to misleading name because already optimized functions reported being "non-optimizable". This relands commit 181d7b85. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1146423002 Cr-Commit-Position: refs/heads/master@{#28577}
-
- 21 May, 2015 7 commits
-
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1147863002 Cr-Commit-Position: refs/heads/master@{#28564}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1148583002 Cr-Commit-Position: refs/heads/master@{#28556}
-
mstarzinger authored
Revert of Remove obsolete JSFunction::IsOptimizable predicate. (patchset #1 id:1 of https://codereview.chromium.org/1150683002/) Reason for revert: Causes assertions to fire when serializing optimized code. Original issue's description: > Remove obsolete JSFunction::IsOptimizable predicate. > > This just delegates to SharedFunctionInfo::optimization_disabled and > was primarily used for assertions. Removing it due to misleading name > because already optimized functions reported being "non-optimizable". > > R=titzer@chromium.org > > Committed: https://crrev.com/181d7b85977eb752b19e1de902093783e31330ef > Cr-Commit-Position: refs/heads/master@{#28551} TBR=titzer@chromium.org,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1148973005 Cr-Commit-Position: refs/heads/master@{#28554}
-
mstarzinger authored
This just delegates to SharedFunctionInfo::optimization_disabled and was primarily used for assertions. Removing it due to misleading name because already optimized functions reported being "non-optimizable". R=titzer@chromium.org Review URL: https://codereview.chromium.org/1150683002 Cr-Commit-Position: refs/heads/master@{#28551}
-
mstarzinger authored
This allows enabling TurboFan on a certain subset of language features in the AstNumberingVisitor. The heuristics of when to optimize remain unchanged, only the choice of which optimizing compiler to use changes. R=bmeurer@chromium.org BUG=v8:4131 LOG=N Review URL: https://codereview.chromium.org/1155503002 Cr-Commit-Position: refs/heads/master@{#28544}
-
bbudge authored
Removes EnsureDouble* methods. Adds a RequiredAlignment method. Changes call sites. LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1150953002 Cr-Commit-Position: refs/heads/master@{#28541}
-
yangguo authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/1145183004 Cr-Commit-Position: refs/heads/master@{#28539}
-