- 19 Jun, 2015 25 commits
-
-
oth authored
erikcorry@chromium.org suggested digging into v8 handle usage. Found potential scopes in ast.cc and runtime-literals.cc and added tests. The runtime-literals.cc change reduces peak handles in imaging-darkroom.js from 1,282,610 to 428,218. The ast.cc change reduces the peak handles in string-tagcloud.js from 80,738 to 8,176. No significant handle count issues found with major websites, but substantial savings on some benchmarks and demos: Kraken's imaging-darkroom.js down from 1,282,610 to 428,218 due to runtime-literals.cc scope. SunSpider's string-tagcloud.js down from 80,738 to 8.176 due to ast.cc http://www.flohofwoe.net/demos/dragons_asmjs.html (738,906 -> 478,296) http://www.flohofwoe.net/demos/instancing_asmjs.html (737,884 -> 477,274) https://dl.dropboxusercontent.com/u/16662598/Ports/DOSBox-web/doom.html?engine=dosbox-growth.js (1,724,114 -> 1,087,408) https://kripken.github.io/ammo.js/examples/new/ammo.html (175,784 -> 142,058) BUG= Review URL: https://codereview.chromium.org/1185633002 Cr-Commit-Position: refs/heads/master@{#29155}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1195823002 Cr-Commit-Position: refs/heads/master@{#29154}
-
wingo authored
R=rossberg@chromium.org BUG=v8:4194 LOG=N Review URL: https://codereview.chromium.org/1191303002 Cr-Commit-Position: refs/heads/master@{#29153}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1191313003 Cr-Commit-Position: refs/heads/master@{#29152}
-
yangguo authored
Each Script object now keeps a WeakFixedArray of SharedFunctionInfo objects created from this script. This way, when compiling a function, we do not create duplicate shared function info objects when recompiling with either compiler. This fixes a class of issues in the debugger, where we set break points on one shared function info, but functions from duplicate shared function infos are not affected. LOG=N BUG=v8:4132 Review URL: https://codereview.chromium.org/1183733006 Cr-Commit-Position: refs/heads/master@{#29151}
-
caitpotter88 authored
BUG=v8:4007 LOG=N R=rossberg@chromium.org, arv@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Committed: https://crrev.com/12e194860a56d47a10d89ae34761a4af6b6166bb Cr-Commit-Position: refs/heads/master@{#29118} Review URL: https://codereview.chromium.org/1191003003 Cr-Commit-Position: refs/heads/master@{#29150}
-
bmeurer authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/1196613003 Cr-Commit-Position: refs/heads/master@{#29149}
-
conradw authored
BUG= LOG=N Review URL: https://codereview.chromium.org/1192383003 Cr-Commit-Position: refs/heads/master@{#29148}
-
bmeurer authored
BUG=v8:3809 LOG=n R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/1196623002 Cr-Commit-Position: refs/heads/master@{#29147}
-
bmeurer authored
The three different concerns that the ControlReducer used to deal with are now properly separated into a.) DeadCodeElimination, which is a regular AdvancedReducer, that propagates Dead via control edges, b.) CommonOperatorReducer, which does strength reduction on common operators (i.e. Branch, Phi, and friends), and c.) GraphTrimming, which removes dead->live edges from the graph. This will make it possible to run the DeadCodeElimination together with other passes that actually introduce Dead nodes, i.e. typed lowering; and it opens the door for general inlining without two stage fix point iteration. To make the DeadCodeElimination easier and more uniform, we basically reverted the introduction of DeadValue and DeadEffect, and changed the Dead operator to produce control, value and effect. Note however that this is not a requirement, but merely a way to make dead propagation easier and more uniform. We could always go back and decide to have different Dead operators if some other change requires that. Note that there are several additional opportunities for cleanup now, i.e. OSR deconstruction could be a regular reducer now, and we don't need to use TheHole as dead value marker in the GraphReducer. And we can actually run the dead code elimination together with the other passes instead of using separate passes over the graph. We will do this in follow up CLs. R=jarin@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1193833002 Cr-Commit-Position: refs/heads/master@{#29146}
-
mstarzinger authored
R=jarin@chromium.org TEST=cctest/test-run-deopt/DeoptExceptionHandlerFinally BUG=v8:4195 LOG=N Review URL: https://codereview.chromium.org/1189373003 Cr-Commit-Position: refs/heads/master@{#29145}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1193673002 Cr-Commit-Position: refs/heads/master@{#29144}
-
Ilija.Pavlovic authored
Added: JIC, BEQZC, JIALC, LDPC, LWPC, ALUIPC, ADDIUPC, ALIGN/DAILGN, LWUPC, AUIPC, BC, BALC. Additional fixed compact branch offset. TEST=test-assembler-mips[64]/r6_align, r6_dalign, r6_aluipc, r6_lwpc, r6_jic, r6_beqzc, r6_jialc, r6_addiupc, r6_ldpc, r6_lwupc, r6_auipc, r6_bc, r6_balc BUG= Review URL: https://codereview.chromium.org/1195793002 Cr-Commit-Position: refs/heads/master@{#29143}
-
verwaest authored
Don't roundtrip to JS to update the length. This is 1) faster (although we don't care) and 2) avoids stackchecks that otherwise make the .Assert fail on stack overflow. BUG=chromium:502147 LOG=n Review URL: https://codereview.chromium.org/1189423002 Cr-Commit-Position: refs/heads/master@{#29142}
-
rmcilroy authored
Adds a script for converting gc nvp output into csv files. Factors out common code in gc-nvp-trace-processor.py to gc_nvp_common.py to be shared by both scripts. Fixes a couple of issues in nvp parsing code. Review URL: https://codereview.chromium.org/1175113008 Cr-Commit-Position: refs/heads/master@{#29141}
-
hablich authored
Revert of [release-tools] Fix possible race condition in retrieval of latest rolled version (patchset #2 id:20001 of https://codereview.chromium.org/1186393007/) Reason for revert: Build slave fetches git repo from cache not from real repo. Original issue's description: > [release-tools] Fix possible race condition in retrieval of latest rolled version > > R=machenbach@chromium.org > BUG= > NOTRY=true > > Committed: https://crrev.com/5d2a85b2450f9f88a94949052c5b055c1304b9b8 > Cr-Commit-Position: refs/heads/master@{#29137} TBR=machenbach@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1195693003 Cr-Commit-Position: refs/heads/master@{#29140}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1196543003 Cr-Commit-Position: refs/heads/master@{#29139}
-
machenbach authored
BUG=chromium:502176 LOG=n Review URL: https://codereview.chromium.org/1193843002 Cr-Commit-Position: refs/heads/master@{#29138}
-
hablich authored
R=machenbach@chromium.org BUG= NOTRY=true Review URL: https://codereview.chromium.org/1186393007 Cr-Commit-Position: refs/heads/master@{#29137}
-
yangguo authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/1189183002 Cr-Commit-Position: refs/heads/master@{#29136}
-
yangguo authored
R=mstarzinger@chromium.org BUG=chromium:500980 LOG=N Review URL: https://codereview.chromium.org/1191263002 Cr-Commit-Position: refs/heads/master@{#29135}
-
yangguo authored
Not doing so could result in this scenario: - We ensure that the string table is large enough. It is. - We compile code stubs, which triggers a GC. - The GC clears string table entries. - This increases the number of deleted entries in the table. - When the deserializer hooks up internalized strings into the table, we ensure that the table is large enough every time. - Due to changed number of deleted entries, the heuristic decides to expand the string table. - Allocation during deserialization causes assertion to fail. BUG=chromium:502085 LOG=N Review URL: https://codereview.chromium.org/1197633002 Cr-Commit-Position: refs/heads/master@{#29134}
-
chunyang.dai authored
port 41405c04 (r29122). fix spelling error in r29122. BUG= Review URL: https://codereview.chromium.org/1197593002 Cr-Commit-Position: refs/heads/master@{#29133}
-
ulan authored
We block constant pool up to the call stub instruction, but the check for code size includes the next instruction after the call instruction. That instruction can emit constant pool. BUG=chromium:500831 LOG=NO TEST=mjsunit/regress/regress-500831 Review URL: https://codereview.chromium.org/1189123003 Cr-Commit-Position: refs/heads/master@{#29132}
-
v8-autoroll authored
Rolling v8/build/gyp to 5122240c5e5c4d8da12c543d82b03d6089eb77c5 Rolling v8/third_party/icu to 00af1a4e512477e48ba3d5efc97adbc95462685e Rolling v8/tools/clang to d2b4eddd701ff0265124147bcb0a65f32273f06b TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1192743002 Cr-Commit-Position: refs/heads/master@{#29131}
-
- 18 Jun, 2015 15 commits
-
-
binji authored
Revert of Add d8 API for spawning function on a new thread. (patchset #6 id:100001 of https://codereview.chromium.org/1185643004/) Reason for revert: Fails on V8 Win32 - nosnap - shared (http://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/7427) Fails on V8 Arm - debug builder (http://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug%20builder/builds/4361) Fails on V8 Linux - shared (http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20shared/builds/4430) Original issue's description: > Add d8 API for spawning function on a new thread. > > This API closely matches the Worker API. The differences: > > 1) The argument to the Worker constructor is a function to run, not a script. > 2) Receiving a message from a worker is a synchronous API (as there is no event > loop). > > The serialization done here is not robust as the real DOM implementation. For > example, recursive data structures or otherwise duplicated objects are not > allowed. > > BUG=none > R=jochen@chromium.org > LOG=n > > Committed: https://crrev.com/3d98b956b56fa283b40913788ff760022d478812 > Cr-Commit-Position: refs/heads/master@{#29126} TBR=jochen@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=none Review URL: https://codereview.chromium.org/1192193002 Cr-Commit-Position: refs/heads/master@{#29130}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1180753005 Cr-Commit-Position: refs/heads/master@{#29129}
-
balazs.kilvady authored
TEST=cctest/test-simplified-lowering/RunAccessTests_float64 BUG= Review URL: https://codereview.chromium.org/1182713004 Cr-Commit-Position: refs/heads/master@{#29128}
-
caitpotter88 authored
The ordering of the "IsArray()" check for IsConcatSpreadable() was incorrect previously --- IsArray() is only used if Get(O, @@isConcatSpreadable) is undefined. Without this fix, it's not possible for Array subclasses to opt out of spreading 22.1.3.1.1 http://www.ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable BUG=v8:3764 LOG=N R=arv@chromium.org, dslomov@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1192153002 Cr-Commit-Position: refs/heads/master@{#29127}
-
binji authored
This API closely matches the Worker API. The differences: 1) The argument to the Worker constructor is a function to run, not a script. 2) Receiving a message from a worker is a synchronous API (as there is no event loop). The serialization done here is not robust as the real DOM implementation. For example, recursive data structures or otherwise duplicated objects are not allowed. BUG=none R=jochen@chromium.org LOG=n Review URL: https://codereview.chromium.org/1185643004 Cr-Commit-Position: refs/heads/master@{#29126}
-
https://codereview.chromium.org/1187173004/machenbach authored
Reason for revert: [Sheriff] Breaks layout tests. Please submit a needsmanualrebaseline change on the blink side for the expectations if intended. E.g. http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/545 Original issue's description: > Ship arrow functions > > R=rossberg@chromium.org > LOG=Y > BUG=v8:2700 > > Committed: https://crrev.com/541b6c39e0ecae1c070f51fae8e9e3dab18d278c > Cr-Commit-Position: refs/heads/master@{#29119} TBR=rossberg@chromium.org,wingo@igalia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:2700 Review URL: https://codereview.chromium.org/1182053013 Cr-Commit-Position: refs/heads/master@{#29125}
-
caitpotter88 authored
Revert of [es6] ship Object.assign (patchset #2 id:20001 of https://codereview.chromium.org/1191003003/) Reason for revert: Seems to break asan somehow Original issue's description: > [es6] ship Object.assign > > BUG=v8:4007 > LOG=N > R=rossberg@chromium.org, arv@chromium.org > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/12e194860a56d47a10d89ae34761a4af6b6166bb > Cr-Commit-Position: refs/heads/master@{#29118} TBR=arv@chromium.org,dslomov@chromium.org,rossberg@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4007 Review URL: https://codereview.chromium.org/1191593005 Cr-Commit-Position: refs/heads/master@{#29124}
-
hpayer authored
Revert of Re-land new insertion write barrier. (patchset #3 id:40001 of https://codereview.chromium.org/1153233003/) Reason for revert: Deoptimizer crashes. Original issue's description: > Re-land new insertion write barrier. > > BUG= > > Committed: https://crrev.com/72f850458cb530d871cf3fb6442660555dc51bc2 > Cr-Commit-Position: refs/heads/master@{#29052} TBR=ulan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1176243015 Cr-Commit-Position: refs/heads/master@{#29123}
-
conradw authored
Revert of Revert of [strong] Implement strong mode restrictions on property access (patchset #1 id:1 of https://codereview.chromium.org/1189153002/) Reason for revert: Issue was ultimately caused/fixed by https://codereview.chromium.org/1194673002/ Original issue's description: > Revert of [strong] Implement strong mode restrictions on property access (patchset #23 id:460001 of https://codereview.chromium.org/1168093002/) > > Reason for revert: > Speculative revert, maybe breaks GC-stress > > http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/808 > > Original issue's description: > > [strong] Implement strong mode restrictions on property access > > > > Implements the strong mode proposal's restrictions on property access. > > > > To be fully explored in a followup: proxies, interceptors, access checks, load from super > > > > BUG=v8:3956 > > LOG=N > > > > Committed: https://crrev.com/85dbfb9a389e7b21bd2a63862202ee97fc5d7982 > > Cr-Commit-Position: refs/heads/master@{#29109} > > TBR=rossberg@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:3956 > > Committed: https://crrev.com/407657b706711fd5f8d417841e24b284886f3776 > Cr-Commit-Position: refs/heads/master@{#29115} TBR=rossberg@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1185343005 Cr-Commit-Position: refs/heads/master@{#29122}
-
ulan authored
Revert of Replace ad-hoc weakness in transition array with WeakCell. (patchset #5 id:80001 of https://codereview.chromium.org/1157943003/) Reason for revert: Breaks descriptor array clearing. Original issue's description: > Replace ad-hoc weakness in transition array with WeakCell. > > BUG= > > Committed: https://crrev.com/885455e99de817f86a0b5df2dc0d932cfc179749 > Cr-Commit-Position: refs/heads/master@{#29083} TBR=jkummerow@chromium.org,hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1194673002 Cr-Commit-Position: refs/heads/master@{#29121}
-
ulan authored
RegExpExecStub pushes callee-saved registers without setting up a frame. This confuses the stack iterator. Other architectures do not save these registers. BUG=chromium:487981 LOG=NO TEST=mjsunit/regress/regress-487981 Review URL: https://codereview.chromium.org/1183593005 Cr-Commit-Position: refs/heads/master@{#29120}
-
wingo authored
R=rossberg@chromium.org LOG=Y BUG=v8:2700 Review URL: https://codereview.chromium.org/1187173004 Cr-Commit-Position: refs/heads/master@{#29119}
-
caitpotter88 authored
BUG=v8:4007 LOG=N R=rossberg@chromium.org, arv@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1191003003 Cr-Commit-Position: refs/heads/master@{#29118}
-
bmeurer authored
R=machenbach@chromium.org Review URL: https://codereview.chromium.org/1189943005 Cr-Commit-Position: refs/heads/master@{#29117}
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1191813003 Cr-Commit-Position: refs/heads/master@{#29116}
-