- 22 Jun, 2015 7 commits
-
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1194943004 Cr-Commit-Position: refs/heads/master@{#29180}
-
yangguo authored
LOG=N BUG=chromium:502908 Review URL: https://codereview.chromium.org/1196223002 Cr-Commit-Position: refs/heads/master@{#29179}
-
bmeurer authored
This change does the following: a.) Remove unused fields from the Typer. b.) Move some interesting unions to types.h. c.) Reduce Typer constructor overhead. d.) Avoid heap allocation in the Typer. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1199903002 Cr-Commit-Position: refs/heads/master@{#29178}
-
mstarzinger authored
This fixes a terrible interaction of code flushing and the clearing of optimized code maps hanging off a SharedFunctionInfo. The following is what happened: 1) Incremental marking cleared map in SharedFunctionInfo s, however it was not enqueued as a flushing candidate because one JSFunction f1 still had optimized code. 2) Deoptimization of f1 made s eligible for code flushing. 3) Optimization of f2 added new entry to optimized code map of s. 4) The JSFunction f2 became unreachable and hence is never marked. 5) Incremental marking now visits f1, finds it eligible for flushing, also s is eligible for flushing, both are enqueued. 6) Marking finishes, code flusher clears f1 and s, but the optimized code map of s still contains an entry. 7) Boom! R=ulan@chromium.org,hpayer@chromium.org TEST=mjsunit/es6/generators-iteration BUG=v8:3803 LOG=N Review URL: https://codereview.chromium.org/1197713004 Cr-Commit-Position: refs/heads/master@{#29177}
-
Benedikt Meurer authored
This is another missing piece in the puzzle towards general inlining. The fact that we can combine this with context specialization is a nice bonus, and not necessarily a requirement. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1198193002. Cr-Commit-Position: refs/heads/master@{#29176}
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1180713007 Cr-Commit-Position: refs/heads/master@{#29175}
-
bmeurer authored
This way we don't need the separate late control reduction pass over the graph, plus we can also reduce dead code recognized by generic lowering. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1198923002 Cr-Commit-Position: refs/heads/master@{#29174}
-
- 21 Jun, 2015 1 commit
-
-
mvstanton authored
Turbofan needs to pass vector slots around for named and keyed stores. Also, the CL addresses a missing slot for ClassLiterals. BUG= Review URL: https://codereview.chromium.org/1178363002 Cr-Commit-Position: refs/heads/master@{#29173}
-
- 20 Jun, 2015 3 commits
-
-
v8-autoroll authored
Rolling v8/buildtools to ecc8e253abac3b6186a97573871a084f4c0ca3ae Rolling v8/tools/clang to 73ec8804ed395b0886d6edf82a9f33583f4a7902 TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1195673003 Cr-Commit-Position: refs/heads/master@{#29172}
-
machenbach authored
Revert of Ship Harmony Array/TypedArray methods (patchset #6 id:100001 of https://codereview.chromium.org/1187543003/) Reason for revert: [Sheriff] Breaks gcstress and mac asan: http://build.chromium.org/p/client.v8/builders/V8%20GC%20Stress%20-%203/builds/3896 http://build.chromium.org/p/client.v8/builders/V8%20Mac64%20ASAN/builds/1774 Original issue's description: > Ship Harmony Array/TypedArray methods > > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > BUG=v8:3578 > LOG=Y > R=adamk > > Committed: https://crrev.com/7142b0d211b732e1c119fded80f43fbbd9cea0f8 > Cr-Commit-Position: refs/heads/master@{#29170} TBR=adamk@chromium.org,littledan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3578 Review URL: https://codereview.chromium.org/1195163002 Cr-Commit-Position: refs/heads/master@{#29171}
-
littledan authored
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel BUG=v8:3578 LOG=Y R=adamk Review URL: https://codereview.chromium.org/1187543003 Cr-Commit-Position: refs/heads/master@{#29170}
-
- 19 Jun, 2015 29 commits
-
-
caitpotter88 authored
Object.setPrototypeOf() throws a TypeError if value would create a cycle. Previously a plain Error was thrown rather than a TypeError. BUG=v8:4197 R=mike@bocoup.com LOG=N Review URL: https://codereview.chromium.org/1198523002 Cr-Commit-Position: refs/heads/master@{#29169}
-
arv authored
This enables both --harmony-spreadcalls and --harmony-spread-arrays BUG=v8:3018 LOG=N R=caitpotter88@gmail.com, rossberg@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1177223005 Cr-Commit-Position: refs/heads/master@{#29168}
-
wingo authored
R=rossberg@chromium.org LOG=Y BUG=v8:2700 Review URL: https://codereview.chromium.org/1194873002 Cr-Commit-Position: refs/heads/master@{#29167}
-
conradw authored
Reason: Regressions in various benchmarks. Revert "Revert of Revert of [strong] Implement strong mode restrictions on property access (patchset #1 id:1 of https://codereview.chromium.org/1189153002/)" This reverts commit 41405c04. Revert "X87: Revert of Revert of [strong] Implement strong mode restrictions on property access." This reverts commit 48de5f4d. Revert "Fix overlapping KeyedLoadIC bitfield." This reverts commit 4e6c956a. Revert "MIPS64: Fix 'Revert of Revert of [strong] Implement strong mode restrictions on property access'." This reverts commit 74f97b0d. BUG= Review URL: https://codereview.chromium.org/1199493002 Cr-Commit-Position: refs/heads/master@{#29166}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1194943002 Cr-Commit-Position: refs/heads/master@{#29165}
-
arv authored
This reverts commit 72bb369d. Always skip slow tests. Also, some eval tests are failing in strict mode with nosnap BUG=N LOG=N R=adamk@chromium.org, littledan@chromium.org, machenbach@chromium.org Review URL: https://codereview.chromium.org/1190063002 Cr-Commit-Position: refs/heads/master@{#29164}
-
Djordje.Pesic authored
Added memory and register data tracing to mips32 simulator Review URL: https://codereview.chromium.org/1195783002 Cr-Commit-Position: refs/heads/master@{#29163}
-
mstarzinger authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1187563011 Cr-Commit-Position: refs/heads/master@{#29162}
-
binji authored
Revert of Add d8 API for spawning function on a new thread (Second try) (patchset #3 id:60001 of https://codereview.chromium.org/1195613003/) Reason for revert: Fails on V8 Linux - isolates (http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20isolates/builds/4128) Original issue's description: > Add d8 API for spawning function on a new thread (Second try) > > 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=chromium:497295 > R=jochen@chromium.org > LOG=n > > Review URL: https://codereview.chromium.org/1185643004 > > Cr-Commit-Position: refs/heads/master@{#29126} > > Committed: https://crrev.com/ec2eaf712ecee6b4891c0458f2397e04a1f9b339 > Cr-Commit-Position: refs/heads/master@{#29158} TBR=jochen@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:497295 Review URL: https://codereview.chromium.org/1191373005 Cr-Commit-Position: refs/heads/master@{#29161}
-
arv authored
Revert of Additional HandleScopes to limit Handle consumption. (patchset #4 id:50001 of https://codereview.chromium.org/1185633002/) Reason for revert: Fails the following test handle-count-ast handle-count-runtime-... on V8 Linux - nosnap - debug - 1 http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/851/steps/Check/logs/stdio Original issue's description: > Additional HandleScopes to limit Handle consumption. > > 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= > > Committed: https://crrev.com/3a4c7538839186aa38910c66c986abb563f4ccd2 > Cr-Commit-Position: refs/heads/master@{#29155} TBR=yangguo@chromium.org,erikcorry@chromium.org,oth@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1194873004 Cr-Commit-Position: refs/heads/master@{#29160}
-
binji authored
Don't DCHECK in the atomic runtime functions. BUG=chromium:501809,chromium:497295 R=jarin@chromium.org LOG=n Review URL: https://codereview.chromium.org/1189223003 Cr-Commit-Position: refs/heads/master@{#29159}
-
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=chromium:497295 R=jochen@chromium.org LOG=n Review URL: https://codereview.chromium.org/1185643004 Cr-Commit-Position: refs/heads/master@{#29126} Review URL: https://codereview.chromium.org/1195613003 Cr-Commit-Position: refs/heads/master@{#29158}
-
dusan.milosavljevic authored
TEST=mjsunit/asm/embenchen/fannkuch, mjsunit/math-abs BUG= Review URL: https://codereview.chromium.org/1192413002 Cr-Commit-Position: refs/heads/master@{#29157}
-
balazs.kilvady authored
Port 41405c04 TEST=mjsunit/strong/load-property-mutate-backing-store, mjsunit/call-stub BUG= Review URL: https://codereview.chromium.org/1191333003 Cr-Commit-Position: refs/heads/master@{#29156}
-
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}
-