- 15 Mar, 2017 7 commits
-
-
bmeurer authored
For the old asm.js pipeline, there's no point in running either the JSCallReducer or the JSNativeContextSpecialization, as both will not kick in for any asm.js relevant code. So remove the kDeoptimizationEnabled flag from both of them and just run them on regular JavaScript only. Drive-by-fix: Slightly rearrange keyed access to String receivers in the JSNativeContextSpecialization::ReduceKeyedAccess method to access constant characters independent of the IC mode (as long as the constant index is within the range of the receiver). BUG=v8:5267 R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2743253002 Cr-Commit-Position: refs/heads/master@{#43813}
-
jarin authored
BUG=chromium:700883 Review-Url: https://codereview.chromium.org/2751513006 Cr-Commit-Position: refs/heads/master@{#43812}
-
jarin authored
BUG=chromium:693425 Review-Url: https://codereview.chromium.org/2749193003 Cr-Commit-Position: refs/heads/master@{#43811}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7de5863..2744073 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/1ec68b3..e9f547b Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/f091611..2a8813f TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: Ie78a772ac8d840d4f18a6b756a8ae67979cd2ef1 Reviewed-on: https://chromium-review.googlesource.com/455397Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#43810}
-
jing.bao authored
Also use vinstr for vps/vpd/vss/vsd BUG= Review-Url: https://codereview.chromium.org/2747103002 Cr-Commit-Position: refs/heads/master@{#43809}
-
Eric Holk authored
Change-Id: I47f0d5578a7c26aa7a30c97175eefc1a9c935d77 Reviewed-on: https://chromium-review.googlesource.com/455318 Commit-Queue: Eric Holk <eholk@chromium.org> Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#43808}
-
Eric Holk authored
Android sets both V8_OS_ANDROID and V8_OS_LINUX. For the Wasm trap handler, the difference between these OSes matters. BUG= chromium:701590 Change-Id: I5ae703a1d932c8a63e499ad39a057ad1871a2ab1 Reviewed-on: https://chromium-review.googlesource.com/455556 Commit-Queue: Eric Holk <eholk@chromium.org> Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#43807}
-
- 14 Mar, 2017 33 commits
-
-
Ross McIlroy authored
Removes the --ignition-staging flag since it is no longer used by anything and won't be a shipping configuration. Also removes ignition_turbo variant from testrunner, since it is now the same as the turbofan variant. BUG=v8:4280 Change-Id: I3b96e986879fc70b8e202fe9496334828acdd0ba Reviewed-on: https://chromium-review.googlesource.com/452621 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#43806}
-
franzih authored
Revert of Collect type profile for DevTools. (patchset #40 id:750001 of https://codereview.chromium.org/2707873002/ ) Reason for revert: gcc bot is now flaky https://build.chromium.org/p/client.v8/builders/V8%20Linux%20gcc%204.8/builds/11863 Original issue's description: > Collect type profile for DevTools > > Collect type information for JavaScript variables and display it > in Chrome DevTools. > Design Doc: https://docs.google.com/a/google.com/document/d/1O1uepXZXBI6IwiawTrYC3ohhiNgzkyTdjn3R8ysbYgk/edit?usp=sharing > > When debugging JavaScript, it’s helpful to know the type of > a variable, parameter, and return values. JavaScript is > dynamically typed, and for complex > source code it’s often hard to infer types. With type profiling, we > can provide type information to JavaScript developers. > > This CL is a proof of concept. It collects type profile for > assignments and simply prints the types to stdout. > > The output looks something like this: > > #my_var1 > #Object > #number > #string > #number > #undefined > #string > #Object > #Object > > > We use an extra slot in the feedback vector of assignments to > carry the list of types for that assignment. The extra slot is > only added when the flag --type-profile is given. > > > Missing work: > * Collect data for parameters and return values (currently only assignments). > * Remove duplicates from the list of collected types and use a common base class. > * Add line numbers or source position instead of the variable name. > > > > BUG=v8:5935 > > Review-Url: https://codereview.chromium.org/2707873002 > Cr-Original-Commit-Position: refs/heads/master@{#43791} > Committed: https://chromium.googlesource.com/v8/v8/+/0332bebde99d0f9a5a8326382f5f37cc26224ae0 > Review-Url: https://codereview.chromium.org/2707873002 > Cr-Commit-Position: refs/heads/master@{#43804} > Committed: https://chromium.googlesource.com/v8/v8/+/6cf880f4b84c533d4bb139d33c1369e309d1c579 TBR=yangguo@chromium.org,mvstanton@chromium.org,rmcilroy@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5935 Review-Url: https://codereview.chromium.org/2754573002 Cr-Commit-Position: refs/heads/master@{#43805}
-
franzih authored
Collect type information for JavaScript variables and display it in Chrome DevTools. Design Doc: https://docs.google.com/a/google.com/document/d/1O1uepXZXBI6IwiawTrYC3ohhiNgzkyTdjn3R8ysbYgk/edit?usp=sharing When debugging JavaScript, it’s helpful to know the type of a variable, parameter, and return values. JavaScript is dynamically typed, and for complex source code it’s often hard to infer types. With type profiling, we can provide type information to JavaScript developers. This CL is a proof of concept. It collects type profile for assignments and simply prints the types to stdout. The output looks something like this: #my_var1 #Object #number #string #number #undefined #string #Object #Object We use an extra slot in the feedback vector of assignments to carry the list of types for that assignment. The extra slot is only added when the flag --type-profile is given. Missing work: * Collect data for parameters and return values (currently only assignments). * Remove duplicates from the list of collected types and use a common base class. * Add line numbers or source position instead of the variable name. BUG=v8:5935 Review-Url: https://codereview.chromium.org/2707873002 Cr-Original-Commit-Position: refs/heads/master@{#43791} Committed: https://chromium.googlesource.com/v8/v8/+/0332bebde99d0f9a5a8326382f5f37cc26224ae0 Review-Url: https://codereview.chromium.org/2707873002 Cr-Commit-Position: refs/heads/master@{#43804}
-
bradnelson authored
These tests fail with the new asm.js parser, because they are invalid under a more strict reading of the spec. NOTE: These also fail to validate when run in Firefox. BUG=v8:4203 BUG=v8:6090 R=aseemgarg@chromium.org,eholk@chromium.org Review-Url: https://codereview.chromium.org/2745393002 Cr-Commit-Position: refs/heads/master@{#43803}
-
Ross McIlroy authored
Used by ReduceJSEqualTypeOf, and will also be used to lower a new TestTypeof bytecode in a followup CL. BUG=v8:5267 Change-Id: I990aa6ac8ac0b9bd01080dda1764c5bfe3a4d7cf Reviewed-on: https://chromium-review.googlesource.com/454797Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#43802}
-
Clemens Hammacher authored
The wasm interpreter entry is only called from wasm code. Hence the flag is cleared unconditinally before executing in the interpreter. Note that the interpreter does not use trap handling. It can on the other hand call to JS functions, hence the flag should not be set while executing in the interpreter. The flag is reset when returning from the interpreter. This CL avoids test failures in follow-up CLs which emerged after rebasing on the trap handler CL of eholk. R=titzer@chromium.org, ahaas@chromium.org CC=eholk@chromium.org BUG=v8:5822, v8:5277 Change-Id: I8106e3a92bd9fd6159c785a718bed2d23cb3d593 Reviewed-on: https://chromium-review.googlesource.com/454676 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#43801}
-
caitp authored
BUG=chromium:691875 R=gsathya@chromium.org Review-Url: https://codereview.chromium.org/2747733002 Cr-Commit-Position: refs/heads/master@{#43800}
-
jkummerow authored
Avoiding runtime call overhead. BUG=v8:5269 Review-Url: https://codereview.chromium.org/2717203002 Cr-Commit-Position: refs/heads/master@{#43799}
-
machenbach authored
Revert of Collect type profile for DevTools. (patchset #39 id:730001 of https://codereview.chromium.org/2707873002/ ) Reason for revert: gcc bot has problems with this: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20gcc%204.8/builds/11858 Original issue's description: > Collect type profile for DevTools > > Collect type information for JavaScript variables and display it > in Chrome DevTools. > Design Doc: https://docs.google.com/a/google.com/document/d/1O1uepXZXBI6IwiawTrYC3ohhiNgzkyTdjn3R8ysbYgk/edit?usp=sharing > > When debugging JavaScript, it’s helpful to know the type of > a variable, parameter, and return values. JavaScript is > dynamically typed, and for complex > source code it’s often hard to infer types. With type profiling, we > can provide type information to JavaScript developers. > > This CL is a proof of concept. It collects type profile for > assignments and simply prints the types to stdout. > > The output looks something like this: > > #my_var1 > #Object > #number > #string > #number > #undefined > #string > #Object > #Object > > > We use an extra slot in the feedback vector of assignments to > carry the list of types for that assignment. The extra slot is > only added when the flag --type-profile is given. > > > Missing work: > * Collect data for parameters and return values (currently only assignments). > * Remove duplicates from the list of collected types and use a common base class. > * Add line numbers or source position instead of the variable name. > > > > BUG=v8:5935 > > Review-Url: https://codereview.chromium.org/2707873002 > Cr-Commit-Position: refs/heads/master@{#43791} > Committed: https://chromium.googlesource.com/v8/v8/+/0332bebde99d0f9a5a8326382f5f37cc26224ae0 TBR=yangguo@chromium.org,mvstanton@chromium.org,rmcilroy@chromium.org,mstarzinger@chromium.org,franzih@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5935 Review-Url: https://codereview.chromium.org/2749673003 Cr-Commit-Position: refs/heads/master@{#43798}
-
yangguo authored
Nested arrow functions can have the same end positions, so the end position is unsuitable to decide whether a scope is an inner function scope. BUG=chromium:696202 R=jgruber@chromium.org, kozyatinskiy@chromium.org Review-Url: https://codereview.chromium.org/2751573003 Cr-Commit-Position: refs/heads/master@{#43797}
-
Sathya Gunasekaran authored
Change-Id: I622c3aca07580051c84c86cf895c23af70c11294 Reviewed-on: https://chromium-review.googlesource.com/453021Reviewed-by: Caitlin Potter <caitp@igalia.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#43796}
-
bbudge authored
- Implements vuzp, vtrn instructions for q-registers. - Refactors vmvn, vswp to use common unary op helper fn. LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2739033002 Cr-Commit-Position: refs/heads/master@{#43795}
-
cwhan.tunz authored
Set undefined to the first argument (search element) if the first argument is not given in %TypedArray%.prototype.indexOf or %TypedArray%.prototype.includes BUG=chromium:700894 Review-Url: https://codereview.chromium.org/2748113002 Cr-Commit-Position: refs/heads/master@{#43794}
-
Clemens Hammacher authored
This is a cleanup in preparation to implement calling imported functions via the wasm interpreter. For imported functions, we do not create entries in the interpreter_code_ vector any more. I also simplified the interface and removed unused or redundant return values. More things are now DCHECKed instead of bailing out. Also, we previously had two PushFrame methods: One is supposed to initialize the interpreter from external code (i.e. adds the first frame to the stack), the other one is used to push new frames on the frame stack for called functions. This CL renames the first to InitFrame, and makes it use the second one. The other remaining user is the DoCall method. R=titzer@chromium.org BUG=v8:5822 Change-Id: Id09ff1e3256428fbd8c955e4664507a0c3167e53 Reviewed-on: https://chromium-review.googlesource.com/453482 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#43793}
-
Michael Achenbach authored
This enforces the prefix for v8 and chromium, as otherwise the links don't work in code review. Also prevents using html links to not confuse bugdroid. NOTRY=true Change-Id: Iaf3b97c9a7d7a87c27736d4b1f8c286daaffd452 Reviewed-on: https://chromium-review.googlesource.com/454796 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#43792}
-
franzih authored
Collect type information for JavaScript variables and display it in Chrome DevTools. Design Doc: https://docs.google.com/a/google.com/document/d/1O1uepXZXBI6IwiawTrYC3ohhiNgzkyTdjn3R8ysbYgk/edit?usp=sharing When debugging JavaScript, it’s helpful to know the type of a variable, parameter, and return values. JavaScript is dynamically typed, and for complex source code it’s often hard to infer types. With type profiling, we can provide type information to JavaScript developers. This CL is a proof of concept. It collects type profile for assignments and simply prints the types to stdout. The output looks something like this: #my_var1 #Object #number #string #number #undefined #string #Object #Object We use an extra slot in the feedback vector of assignments to carry the list of types for that assignment. The extra slot is only added when the flag --type-profile is given. Missing work: * Collect data for parameters and return values (currently only assignments). * Remove duplicates from the list of collected types and use a common base class. * Add line numbers or source position instead of the variable name. BUG=v8:5935 Review-Url: https://codereview.chromium.org/2707873002 Cr-Commit-Position: refs/heads/master@{#43791}
-
Michael Achenbach authored
NOTRY=true Change-Id: Idfcc2481ae65f8098ecc94c20f992f3f3b874b8c Reviewed-on: https://chromium-review.googlesource.com/454716Reviewed-by: Jochen Eisinger <jochen@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43790}
-
jarin authored
Review-Url: https://codereview.chromium.org/2749843002 Cr-Commit-Position: refs/heads/master@{#43789}
-
Toon Verwaest authored
BUG= Change-Id: I62c570ee929b8fbbba99acabd2d149dde99887e5 Reviewed-on: https://chromium-review.googlesource.com/454041Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#43788}
-
Michael Achenbach authored
This reverts commit 822aef29. Reason for revert: Makes getters-on-elements flaky on many bots. E.g.: https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/16848/steps/Check%20-%20isolates%20%28flakes%29/logs/getters-on-elements Bisected locally and tested with: tools/run-tests.py --gn --variants=asm_wasm mjsunit/getters-on-elements --isolates --random-seed-stress-count=500 Original change's description: > [compiler] Mark shared functions which have an optimization job > > Marking shared functions for tier-up was optimizing the functions > non-concurrently, to avoid the case where the same shared function is > optimized concurrently by multiple JS functions. This was particularly a > problem for small functions, which (if called in a loop) could get > marked for optimisation quite quickly. > > In this CL, the shared function is instead marked as having an active > optimization job running, and these do not spawn a compilation job. > > BUG=693590 > > Change-Id: I3df93fbf9cec7eda8229fcf416d7c429c06bec86 > Reviewed-on: https://chromium-review.googlesource.com/446836 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#43778} TBR=mvstanton@chromium.org,leszeks@chromium.org,hablich@chromium.org,v8-reviews@googlegroups.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=693590 Change-Id: If7dbdf3de302ec595c44e7f4795554db7674f22f Reviewed-on: https://chromium-review.googlesource.com/454042Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43787}
-
Jochen Eisinger authored
R=rmcilroy@chromium.org,mlippautz@chromium.org BUG=v8:6069 Change-Id: Iea0134ef3a0252f5a6f4ae2154218776dc6ff96d Reviewed-on: https://chromium-review.googlesource.com/453960Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jochen Eisinger <jochen@chromium.org> Cr-Commit-Position: refs/heads/master@{#43786}
-
jarin authored
BUG=chromium:700883 Review-Url: https://codereview.chromium.org/2750803002 Cr-Commit-Position: refs/heads/master@{#43785}
-
Wiktor Garbacz authored
BUG=v8:6093 Change-Id: Icdc0706a3af23fbf538021a7e80fedaf0b5ae866 Reviewed-on: https://chromium-review.googlesource.com/453699 Commit-Queue: Wiktor Garbacz <wiktorg@google.com> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#43784}
-
Ross McIlroy authored
IsString should not count FIRST_NON_STRING_TYPE as a string type. BUG= Change-Id: I093945763c3d2b56de5b4b5745ba207fe2d8b5d1 Reviewed-on: https://chromium-review.googlesource.com/453899Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#43783}
-
Wiktor Garbacz authored
BUG=v8:6093 Change-Id: I7268abd56769d4cbaefdaa901c532871837cc47e Reviewed-on: https://chromium-review.googlesource.com/452340Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Wiktor Garbacz <wiktorg@google.com> Cr-Commit-Position: refs/heads/master@{#43782}
-
yangguo authored
NOTRY=true R=machenbach@chromium.org BUG=v8:6091 Review-Url: https://codereview.chromium.org/2747123002 Cr-Commit-Position: refs/heads/master@{#43781}
-
Clemens Hammacher authored
marja already introduced a std::is_base_of check in one of the Handle constructors. This CL uses this check for all templatized constructors in Handle and MaybeHandle instead of the current pointer assignment hack. R=marja@chromium.org, mstarzinger@chromium.org Change-Id: I0bdd77ccff4e95015e3b82e2db782a3ec57654fe Reviewed-on: https://chromium-review.googlesource.com/453480 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#43780}
-
jkummerow authored
When a FunctionEntryHook parameter was passed to isolate creation, we ignored any existing snapshots anyway. Since the ability to bootstrap from scratch will be removed from snapshot builds, the FunctionEntryHook feature must depend on a no-snapshot build. BUG=v8:6055 Review-Url: https://codereview.chromium.org/2733203002 Cr-Commit-Position: refs/heads/master@{#43779}
-
Leszek Swirski authored
Marking shared functions for tier-up was optimizing the functions non-concurrently, to avoid the case where the same shared function is optimized concurrently by multiple JS functions. This was particularly a problem for small functions, which (if called in a loop) could get marked for optimisation quite quickly. In this CL, the shared function is instead marked as having an active optimization job running, and these do not spawn a compilation job. BUG=693590 Change-Id: I3df93fbf9cec7eda8229fcf416d7c429c06bec86 Reviewed-on: https://chromium-review.googlesource.com/446836 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#43778}
-
Clemens Hammacher authored
Instead of storing call_pc and ret_pc, store just one pc. This simplifies frame inspection (no distinction between top frame and other frames). The previous ret_pc can easily be computed from the stored pc, since we know that we must be at a indirect or direct call site when returning to a previous frame. It also slightly simplifies the upcoming CL to call imported functions, which would also have to set the call_pc. R=titzer@chromium.org, ahaas@chromium.org BUG=v8:5822 Change-Id: I5876c09ec36450dc1474a760282fd5e41eab38be Reviewed-on: https://chromium-review.googlesource.com/453159 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#43777}
-
Michael Achenbach authored
BUG=chromium:682617 TBR=mstarzinger@chromium.org,mvstanton@chromium.org,rmcilroy@chromium.org NOTRY=true Change-Id: If121a5d01bba113374bc1673780fc713997e54a9 Reviewed-on: https://chromium-review.googlesource.com/454618Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43776}
-
Michael Starzinger authored
This fixes a corner-case in {KeyAccumulator::CollectOwnJSProxyKeys} where the keys returned by {JSReceiver::OwnPropertyKeys} for an array are not internalized and hence have a diverging identity from keys returned by the "ownKeys" trap of a proxy. R=cbruni@chromium.org TEST=mjsunit/regress/regress-crbug-700678 BUG=chromium:700678 Change-Id: I5efd012eade14bd45c69e4abb0aeda684baf38f0 Reviewed-on: https://chromium-review.googlesource.com/452979Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#43775}
-
Michael Achenbach authored
Those tests do real calls to rietveld. As we're moving away from this, we can skip testing it now. BUG=chromium:701296 NOTRY=true TBR=hablich@chromium.org Change-Id: I44249160f7e35d4e2fac7aeb40889a825cfc5678 Reviewed-on: https://chromium-review.googlesource.com/454040Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43774}
-