- 01 Jun, 2017 15 commits
-
-
Sathya Gunasekaran authored
Currently x instanceof Map/Set checks cannot take the fast path, since the Map/Set constructor has dictionary properties. To avoid that, just forcibly migrate the Map/Set constructor to fast properties again once it's fully setup in the bootstrapper. Bug: v8:5717, v8:5902 Change-Id: I23dfd00456c9206a0ca5af71dfbc9236982936fc Reviewed-on: https://chromium-review.googlesource.com/520578 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45663}
-
dusan.simicic authored
Add support for S1x4And, S1x4Or, S1x4Xor, S1x4Not, S1x4AnyTrue, S1x4AllTrue, S1x8And, S1x8Or, S1x8Xor, S1x8Not, S1x8AnyTrue, S1x8AllTrue, S1x16And, S1x16Or, S1x16Xor, S1x16Not, S1x16AnyTrue, S1x16AllTrue, SimdLoad, SimdStore operations for mips32 and mips64 architectures. BUG= Review-Url: https://codereview.chromium.org/2801683003 Cr-Commit-Position: refs/heads/master@{#45662}
-
georgia.kouveli authored
This fixes an issue with ful-codegen where code target entries for the OSR check were being incorrectly shared. We now explicitly disable sharing of code target constant pool entries for full-codegen and for calls to builtins from WASM code, using a scope. BUG=chromium:725743 Review-Url: https://codereview.chromium.org/2922433002 Cr-Commit-Position: refs/heads/master@{#45661}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/asm/regress-719866 BUG=chromium:719866 Change-Id: I6cc9f222769aa036275654286c9c6271ef2d1334 Reviewed-on: https://chromium-review.googlesource.com/520945Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45660}
-
Michael Achenbach authored
Revert "Reland "[runtime] Pass global proxy as receiver to native accessors in case of contextual access"" This reverts commit ba8a7539. Reason for revert: A layout test is unhappy: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/16010 Original change's description: > Reland "[runtime] Pass global proxy as receiver to native accessors in case of contextual access" > > Based on past discussions I'm going to try to reland this change. This makes window.document and document behave the same after navigation, which is a change from what the spec says. If this works out though, it would greatly simplify the spec; and fix the fact that currently it's leaking the underlying global object, which we don't want for security and object-identity reasons. > > Bug: chromium:713732 > Change-Id: I835ef510fc78f04c602434a7cec6420e027c4012 > Reviewed-on: https://chromium-review.googlesource.com/520764 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Kentaro Hara <haraken@chromium.org> > Cr-Commit-Position: refs/heads/master@{#45654} TBR=haraken@chromium.org,verwaest@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:713732 Change-Id: Iecde1cd855c21efa73939bbfbff0c26540ee2d98 Reviewed-on: https://chromium-review.googlesource.com/521045Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45659}
-
Loo Rong Jie authored
SRWLOCK is a faster and lightweight alternative of CRITICAL_SECTION for non-recursive use case. Bug: chromium:592752 Change-Id: Ie97cd9cee2d50a95f316b41c30e953f586b06c99 Reviewed-on: https://chromium-review.googlesource.com/520828Reviewed-by: Jochen Eisinger <jochen@chromium.org> Commit-Queue: Loo Rong Jie <loorongjie@gmail.com> Cr-Commit-Position: refs/heads/master@{#45658}
-
Michael Lippautz authored
Furthermore avoid lock-step between pointer updating phases as they should execute in parallel without synchronization restrictions. This reverts commit bc6adb86. Bug: chromium:726040 Change-Id: I1713d4333f0ce1604ff51c02461f3ef91e4bdaed Reviewed-on: https://chromium-review.googlesource.com/521062Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#45657}
-
Ulan Degenbaev authored
On left trimming the main thread ensures that the array is black before changing its map and length. The concurrent marker snapshots the length of the array and then tries to change its color to black. If the change is successful, then the array is iterated using the saved length. BUG=chromium:694255 Change-Id: Ib06c1c9c3240ace56c1897e5a73462aa447d41f5 Reviewed-on: https://chromium-review.googlesource.com/519323Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45656}
-
Jochen Eisinger authored
Embedders should use Module::InstantiateModule R=neis@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iebd5beeeeb9ea7025c61b97b666827e0a6ec89ad Reviewed-on: https://chromium-review.googlesource.com/519162Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#45655}
-
Toon Verwaest authored
Based on past discussions I'm going to try to reland this change. This makes window.document and document behave the same after navigation, which is a change from what the spec says. If this works out though, it would greatly simplify the spec; and fix the fact that currently it's leaking the underlying global object, which we don't want for security and object-identity reasons. Bug: chromium:713732 Change-Id: I835ef510fc78f04c602434a7cec6420e027c4012 Reviewed-on: https://chromium-review.googlesource.com/520764 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Cr-Commit-Position: refs/heads/master@{#45654}
-
Georg Neis authored
On ia32, AssembleMove used to emit different code depending on whether the to-be-moved heap object is in new space or not. This may have been necessary in the past but is no longer. Moreoever, it's incompatible with running off-thread. With this CL, we don't do the new-space check and just emit a mov. R=mstarzinger@chromium.org Bug: v8:6048 Change-Id: I93abd61a5f290311a431edee3d4fa0a240d52085 Reviewed-on: https://chromium-review.googlesource.com/519248Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#45653}
-
Michael Lippautz authored
Use relaxed reads to allow changing the pointer concurrently in the GC. The layout descriptor will either be fast and there's nothing to be done, or it will be slow, and we will use the forwarding pointer to determine the proper version to use. Bug: chromium:726040 Change-Id: I0a376752c3a99abf0874070387fcaeb3cee0dcb2 Reviewed-on: https://chromium-review.googlesource.com/519346 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45652}
-
Loo Rong Jie authored
Switch to use Win32 CONDITION_VARIABLE like Chromium. This greatly simplifies the implementation of ConditionVariable class for Windows with better performance. Bug:NO Change-Id: Iea5e5cb80520a966aeb687bebb4b5256396cb13b Reviewed-on: https://chromium-review.googlesource.com/519542Reviewed-by: Jochen Eisinger <jochen@chromium.org> Commit-Queue: Loo Rong Jie <loorongjie@gmail.com> Cr-Commit-Position: refs/heads/master@{#45651}
-
Ulan Degenbaev authored
Visitor id for JSObjects does not depend on the instance size. BUG=chromium:694255 Change-Id: I6b4b559207609f4a4c19373572be6692a55c5187 Reviewed-on: https://chromium-review.googlesource.com/520763Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45650}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/0312f98..54fde1e Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/32a3f0b..e6ad063 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: I2c9f167618d17546e4df4abbed2da0d428226868 Reviewed-on: https://chromium-review.googlesource.com/520922Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#45649}
-
- 31 May, 2017 25 commits
-
-
bjaideep authored
Port 510ebfc3 Port 8f61fbc6 R=neis@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2920523002 Cr-Commit-Position: refs/heads/master@{#45648}
-
Michael Lippautz authored
This fixes the counter inconsistencies while leaving the memory in an inaccessible state. Bug: chromium:724947 Change-Id: I431eb6fda84922a52dfb9380c6b482ada55bccee Reviewed-on: https://chromium-review.googlesource.com/519164 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#45647}
-
Michael Lippautz authored
Bug: Change-Id: If4a5408f8ff63a8a2b189f60fda37896a9403d3d Reviewed-on: https://chromium-review.googlesource.com/519386Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#45646}
-
Michael Lippautz authored
This reverts commit 33d5006e. Reason for revert: Still failing TSAN: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/15527/steps/Check%20-%20extra%20%28flakes%29/logs/regress-470804 Original change's description: > Reland "[heap] Move pointers updating to ItemParallelJob"" > > Furthermore avoid lock-step between pointer updating phases as they > should execute in parallel without synchronization restrictions. > > This reverts commit 68a72399. > > Bug: chromium:726040 > Change-Id: I76bb31d146f8aa20f8b7c486eeae9f09efa0cd53 > Reviewed-on: https://chromium-review.googlesource.com/518150 > Commit-Queue: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#45644} TBR=ulan@chromium.org,mlippautz@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:726040 Change-Id: I96090250a6ecc5068c3c927e8435e0b605c3c335 Reviewed-on: https://chromium-review.googlesource.com/519409 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#45645}
-
Michael Lippautz authored
Furthermore avoid lock-step between pointer updating phases as they should execute in parallel without synchronization restrictions. This reverts commit 68a72399. Bug: chromium:726040 Change-Id: I76bb31d146f8aa20f8b7c486eeae9f09efa0cd53 Reviewed-on: https://chromium-review.googlesource.com/518150 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45644}
-
Ben Smith authored
Bug: chromium:724973 Change-Id: I227b30b50f92fac7d6cf3ec3369e324282352ccb Reviewed-on: https://chromium-review.googlesource.com/514348Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#45643}
-
Clemens Hammacher authored
When checking {const char*} (or similar) against each other, don't print them as c strings on failure. Just print the pointer value. In wasm, where we use byte pointers into wasm wire bytes, this was sometimes hiding check failures behind segfaults which happened when trying to output invalid pointers as c strings. Anyway, it's more useful to see the raw pointer values in these cases. Other use cases, where we really compare against c string pointers should be rare in our code base. R=ishell@chromium.org Change-Id: I92a13221d18c987a97cf2a29ac8f454178ff2bb5 Reviewed-on: https://chromium-review.googlesource.com/517166 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#45642}
-
Andreas Haas authored
In https://chromium-review.googlesource.com/c/505614/ I added code to the test runner which deletes the old corpus of the wasm fuzzer. It's time now to remove this code again. R=machenbach@chromium.org Change-Id: Ic3b8f7a1f6d725f0bf070b404a75ac37551a07c0 Reviewed-on: https://chromium-review.googlesource.com/519405Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#45641}
-
jgruber authored
DebugInfo was very closely tied to break point support: * It contained only information relevant to break points. * It was created and freed by break point implementation. * Existence of a DebugInfo on the shared function info implied existence of break points. This CL is a step towards making DebugInfo usable by other debugging functionality such as block coverage by decoupling it from break point support, which is now only one kind of information stored on the DebugInfo object. BUG=v8:6000 Review-Url: https://codereview.chromium.org/2909893002 Cr-Commit-Position: refs/heads/master@{#45640}
-
Clemens Hammacher authored
Most prototype implementations are not fully supported in the interpreter. This is the case at least for exception handling, simd, and atomics. Any function can be redirected to the interpreter though, either by passing --wasm-interpret-all, or by dynamically redirecting to the interpreter for debugging. Making the flags experimental keeps the fuzzer from playing around with these flags. Drive-by: Refactor tests which explicitly set the prototype flag to use a new scope for that. R=ahaas@chromium.org BUG=chromium:727584 Change-Id: I67da79f579f1ac93c67189afef40c6524bdd4430 Reviewed-on: https://chromium-review.googlesource.com/519402 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#45639}
-
Jochen Eisinger authored
Also restrict include/ rules to only add bots for changes affecting headers R=machenbach@chromium.org Change-Id: I97dc3c6249994566912a82ac9fbf8c7d3a57890c Reviewed-on: https://chromium-review.googlesource.com/519342Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#45638}
-
Alexey Kozyatinskiy authored
V8 provides ScriptCompiler::CompileFunctionInContext method which takes expression and compile it as anonymous function like (function() .. expression ..). To produce correct locations for stmts inside of this expression V8 compile this function with negative offset. Instead of stmt position blackboxing use function start position which is negative in described case. Bug: chromium:705963 Change-Id: I86b113198fb59e77b3bbf523c8cd943e22f8a6ca Reviewed-on: https://chromium-review.googlesource.com/519384 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45637}
-
Michael Achenbach authored
V8-side for: https://chromium-review.googlesource.com/c/519143/ NOTRY=true Bug: chromium:726584 Change-Id: Id6f186a47cfdf9287a399ce3fe58c9edb6474ed9 Reviewed-on: https://chromium-review.googlesource.com/519166Reviewed-by: Daniel Vogelheim <vogelheim@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#45636}
-
neis authored
Instead of allocating and embedding certain heap numbers into the code during code assembly, emit dummies but record the allocation requests. Later then, in Assembler::GetCode, allocate the heap numbers and patch the code by replacing the dummies with the actual objects. The RelocInfos for the embedded objects are already recorded correctly when emitting the dummies. R=jarin@chromium.org BUG=v8:6048 Review-Url: https://codereview.chromium.org/2900683002 Cr-Commit-Position: refs/heads/master@{#45635}
-
Tobias Tebbi authored
Bug: chromium:726638 Change-Id: Ib30b147ec60f9f13c5164765f8c63be7a1339e9f Reviewed-on: https://chromium-review.googlesource.com/517497Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#45634}
-
martyn.capewell authored
This reverts commit c5aad5f2 The CL was reverted due to missing Chromium dependencies. This commit removes the simulator trace-based tests, and the associated header file dependencies, previously pulled in by DEPS. The NEON support now has only hand-written tests, in test-assembler-arm64.cc. The remaining tests can be added in a later patch. BUG=chromium:718439 Original issue's description: > Reland "ARM64: Add NEON support" > > This reverts commit cc047635. > The CL was reverted due to a missing DEPS mirror. > > Original issue's description: > > ARM64: Add NEON support > > > > Add assembler, disassembler and simulator support for NEON in the ARM64 backend. > > > > BUG= > > > > Review-Url: https://codereview.chromium.org/2622643005 > > Cr-Commit-Position: refs/heads/master@{#44306} > > BUG= > > Review-Url: https://codereview.chromium.org/2812573003 > Cr-Commit-Position: refs/heads/master@{#44652} Review-Url: https://codereview.chromium.org/2896303003 Cr-Commit-Position: refs/heads/master@{#45633}
-
Ulan Degenbaev authored
BUG=v8:6277 Change-Id: I80314e6c5146e1f5021d07081b9eda3da5da6834 Reviewed-on: https://chromium-review.googlesource.com/518047 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#45632}
-
Michael Achenbach authored
Chromium dropped this a while back. This'll prepare switching the bot to GN. NOTRY=true Bug: chromium:726584 Change-Id: I55d7ef7ae33b66c1ca6721acba018aa19438e2da Reviewed-on: https://chromium-review.googlesource.com/519404 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Daniel Vogelheim <vogelheim@chromium.org> Cr-Commit-Position: refs/heads/master@{#45631}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:6048 Change-Id: I685a629dec46d40c3518096b0a5d3901048e0bee Reviewed-on: https://chromium-review.googlesource.com/519165Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#45630}
-
jgruber authored
BUG=v8:5737 Review-Url: https://codereview.chromium.org/2913783002 Cr-Commit-Position: refs/heads/master@{#45629}
-
Michael Starzinger authored
This removes any kind of heap access from the asm.js validator internals and hence makes it independent of a specific Isolate. It is a precursor towards potentially being able to run validation while streaming. R=clemensh@chromium.org Change-Id: Ia3770bf03bb973b56de897b27be60d7e050af2c4 Reviewed-on: https://chromium-review.googlesource.com/518188 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45628}
-
Georg Neis authored
Bug: v8:6048 Change-Id: I1fbea87f6b7cb48c8f57532238475f2c17c863fb Reviewed-on: https://chromium-review.googlesource.com/519267Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#45627}
-
Ulan Degenbaev authored
Black allocation is switched on at the start of incremental marking if concurrent marking is enabled. New space objects in the allocation area are handled by the main thread. BUG=chromium:694255 Change-Id: I694affe11b95f51e2fe79563b2b048aaef982c03 Reviewed-on: https://chromium-review.googlesource.com/518862 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#45626}
-
Alexey Kozyatinskiy authored
In current implementation in expressions like await foo() we have break location right after foo call and before actual await. And we additionally have a lot of other statement locations because of do scope. Let's move async debugging closer to sync debugging and introduce only one break location for await - before awaited function call. Bug: v8:6425,v8:6162 Change-Id: I7568767856022c49101e7f3b7e39a2e401d21644 Reviewed-on: https://chromium-review.googlesource.com/514046Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#45625}
-
Michael Lippautz authored
Bug: chromium:728096 Change-Id: I8f95f15b56cd49f3e199b74b119abb49eadfe2e1 Reviewed-on: https://chromium-review.googlesource.com/519163 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#45624}
-