- 10 Jul, 2017 1 commit
-
-
Maya Lekova authored
Rename builtins-proxy.cc to builtins-proxy-gen.cc. Bug: v8:6557, v8:6567 Change-Id: I0e52a0c0c6c9b307c33bb18ec36079bdfd4a89ef Reviewed-on: https://chromium-review.googlesource.com/565278 Commit-Queue: Maya Lekova <mslekova@google.com> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46511}
-
- 08 Jul, 2017 1 commit
-
-
Caitlin Potter authored
- Implements the Promise.race algorithm using CodeStubAssembler. - Delete src/js/promise.js, which is no longer needed. - Migrate Promise constructor from slow to fast object in bootstrapper (per v8:5902) Increases size of snapshot_blob.bin on an x64.release build by 1.27kb. BUG=v8:5343 R=gsathya@chromium.org, cbruni@chromium.org Change-Id: I751e7389bd6ba410109640fcd7960b6021540f2f Reviewed-on: https://chromium-review.googlesource.com/535041 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#46489}
-
- 07 Jul, 2017 1 commit
-
-
Andreas Haas authored
This CL changes for floats what https://chromium-review.googlesource.com/c/558964/ changed for doubles. Original message: On x86, signalling NaNs get converted to quiet NaNs when they get push on the stack and popped again. This happens in the code generation for arm, specifically for the vmov instruction with the immediate parameter. This CL replaces the vmov function in assembler-arm to take the immediate as a uint64_t instead of a double, to guarantee that the bit pattern does not change even if the parameter is a signalling NaN. New in this CL: Although src/double.h existed already, src/float.h did not exist yet. I created the file in this CL, and moved the classes Float32 and Float64 there, which already existed in src/deoptimizer.h. R=titzer@chromium.org, martyn.capewell@arm.com, v8-arm-ports@googlegroups.com BUG=v8:6564 Change-Id: I6a3f1f154af9c8cd4bb8e7e856235d3eee5e9edd Reviewed-on: https://chromium-review.googlesource.com/561009 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46473}
-
- 06 Jul, 2017 2 commits
-
-
Ross McIlroy authored
Adds a CheckElimination reducer to eliminate checks which have become unecessary due to inlining of heap constants. BUG=v8:6243, chromium:738312 Change-Id: Ie50b274bd07c86466eead08b2f21d2b63dd9e01c Reviewed-on: https://chromium-review.googlesource.com/559129 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46460}
-
Benedikt Meurer authored
This is the first step in optimizing Map and Set iterators. This ports all the base functionality including - Set.prototype.entries - Set.prototype.values - %SetPrototypeIterator%.next - Map.prototype.entries - Map.prototype.keys - Map.prototype.values - %MapPrototypeIterator%.next to C++ and removes all the dead code and the previous half JavaScript implementation. The next step is to port core parts to CodeStubAssembler and finally inline the fast-paths into TurboFan directly. The relevant design document is at: https://docs.google.com/document/d/13z1fvRVpe_oEroplXEEX0a3WK94fhXorHjcOMsDmR-8 Most of this work is very similar to how the Array iterator works and we mostly follow the same process for the implementation. R=jgruber@chromium.org Bug: v8:6571 Change-Id: Ieb253d6705ba4077c697a5ff0cb6f87f9c4056ff Reviewed-on: https://chromium-review.googlesource.com/561138Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46441}
-
- 30 Jun, 2017 2 commits
-
-
Josh Wolfe authored
Includes unit tests for the post-processing step flatten_regions_to_parts(). Bug: v8:5244 TBR: bmeurer@chromium.org, rossberg@chromium.org Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I306dd1721cc00c5820b061f14c4b6866f8d938f6 Reviewed-on: https://chromium-review.googlesource.com/529973 Commit-Queue: Josh Wolfe <jwolfe@igalia.com> Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46369}
-
Jaime Bernardo authored
Building on Windows with gyp fails depending on the result from sharding the src/v8.gyp:v8_base target. If two source files with the same name are in the same shard, their output object file path would conflict with one another. One example of this conflict is v8_base's runtime/runtime.cc and the V8 inspector's protocol/Runtime.cpp that is generated at build time, for which the files runtime.obj and Runtime.obj would be created, but MSVS overwrites one of them with the other. Dividing the .obj output path by the original source's extension prevents this overwrite. Refs: https://github.com/nodejs/node/pull/13959 Bug: Change-Id: I158e6178f2511297899ee50ea159f574916f903f Reviewed-on: https://chromium-review.googlesource.com/556599Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46354}
-
- 27 Jun, 2017 1 commit
-
-
Leszek Swirski authored
This reverts commit 87f71769. Reason for revert: Performance regressions https://chromeperf.appspot.com/group_report?rev=46185 Original change's description: > [ignition] Merge bytecode array builder and writer > > Move bytecode array writing logic into the array builder, allowing us to > remove the bytecode array writer and bytecode node, and convert runtime > operand writing to compile-time bytecode operand writing using the > information statically known at compile time. > > Bug: v8:6474 > Change-Id: I210cd9897fd41293745614e4a253c7c251dfffc9 > Reviewed-on: https://chromium-review.googlesource.com/533055 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46183} TBR=rmcilroy@chromium.org,leszeks@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6474 Bug: chromium:736646 Change-Id: I00287b2bbbb8efa5a3141bc9c2906f91a7d33e51 Reviewed-on: https://chromium-review.googlesource.com/549319Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#46235}
-
- 26 Jun, 2017 4 commits
-
-
Michael Starzinger authored
R=marja@chromium.org BUG=v8:6408 Change-Id: Ied0c4d1aba18ec84d5feb02c3522b77759be216e Reviewed-on: https://chromium-review.googlesource.com/548636Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46226}
-
Ulan Degenbaev authored
BUG=chromium:694255 TBR=mlippautz@chromium.org Change-Id: I8eaec556d187453bd0d1cfbd0a12c0e81306862c Reviewed-on: https://chromium-review.googlesource.com/548597Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46224}
-
Michael Starzinger authored
R=danno@chromium.org BUG=v8:6408 Change-Id: I6613557e474f415293feb164a30c15485d81ff2c Reviewed-on: https://chromium-review.googlesource.com/547717Reviewed-by:
Daniel Clifford <danno@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46212}
-
Michael Starzinger authored
R=jarin@chromium.org BUG=v8:6408 Change-Id: Ic3337c072d1d2bb93f5b65f23e4888f65a55874f Reviewed-on: https://chromium-review.googlesource.com/541220 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46202}
-
- 23 Jun, 2017 3 commits
-
-
Leszek Swirski authored
Move bytecode array writing logic into the array builder, allowing us to remove the bytecode array writer and bytecode node, and convert runtime operand writing to compile-time bytecode operand writing using the information statically known at compile time. Bug: v8:6474 Change-Id: I210cd9897fd41293745614e4a253c7c251dfffc9 Reviewed-on: https://chromium-review.googlesource.com/533055 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46183}
-
Ulan Degenbaev authored
Change-Id: I5d5df00a38b7196001fb91e2642914271d8e66d0 Reviewed-on: https://chromium-review.googlesource.com/544932 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46164}
-
Michael Lippautz authored
Remove PageParallelJob as it is completely replaced now. It served us well. Bug: chromium:651354 Change-Id: I620fa7bb0dcaf7cd3710492913c501bcb162c781 Reviewed-on: https://chromium-review.googlesource.com/544950Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46159}
-
- 22 Jun, 2017 3 commits
-
-
Camillo Bruni authored
Change-Id: I918bf4752c66537015cc67bd81ec68a57b4dac52 Reviewed-on: https://chromium-review.googlesource.com/544878Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#46130}
-
Michael Lippautz authored
Bug: chromium:651354 Change-Id: I8aa122f48986f494146d4e896b254846de7ce295 Reviewed-on: https://chromium-review.googlesource.com/543500 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46119}
-
Michael Starzinger authored
R=marja@chromium.org Change-Id: I34ace4425d091e7104b37079a455176af08c250d Reviewed-on: https://chromium-review.googlesource.com/543498Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46113}
-
- 20 Jun, 2017 3 commits
-
-
Michael Achenbach authored
This reverts commit da607264. Reason for revert: Looked wrong. The persistent layout test failures started in the next revision. The failure on the revision of the reverted CL was just a flake. Original change's description: > Revert "Fix GCC 7 build errors" > > This reverts commit c0f1ff24. > > Reason for revert: Speculative revert for layout test timeout: > https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/16402 > > Original change's description: > > Fix GCC 7 build errors > > > > BUG=chromium:691681 > > R=franzih@chromium.org > > > > Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9 > > Reviewed-on: https://chromium-review.googlesource.com/530227 > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#46045} > > TBR=adamk@chromium.org,franzih@chromium.org,mic.besace@gmail.com,verwaest@chromium.org > > Change-Id: I2119a87a95ed9eb88b7b32ae436edf28dfc86c16 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: chromium:691681 > Reviewed-on: https://chromium-review.googlesource.com/541227 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46065} TBR=adamk@chromium.org,machenbach@chromium.org,franzih@chromium.org,mic.besace@gmail.com,verwaest@chromium.org Change-Id: Ieee7f6b3b80d380e720206e7b43c4b580918b1d7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:691681 Reviewed-on: https://chromium-review.googlesource.com/541228Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46067}
-
Michael Achenbach authored
This reverts commit c0f1ff24. Reason for revert: Speculative revert for layout test timeout: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/16402 Original change's description: > Fix GCC 7 build errors > > BUG=chromium:691681 > R=franzih@chromium.org > > Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9 > Reviewed-on: https://chromium-review.googlesource.com/530227 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46045} TBR=adamk@chromium.org,franzih@chromium.org,mic.besace@gmail.com,verwaest@chromium.org Change-Id: I2119a87a95ed9eb88b7b32ae436edf28dfc86c16 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:691681 Reviewed-on: https://chromium-review.googlesource.com/541227Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46065}
-
Michaël Zasso authored
BUG=chromium:691681 R=franzih@chromium.org Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9 Reviewed-on: https://chromium-review.googlesource.com/530227 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#46045}
-
- 19 Jun, 2017 3 commits
-
-
jgruber authored
Track execution counts of the continuations of block structures (e.g. IfStatements) to capture cases in which execution does not continue after a block. For example: for (;;) { return; } // Never reached, tracked by continuation counter. A continuation counter only has a start position; it's range is implicitly until the next sibling range or the end of the parent range. Bug: v8:6000 Change-Id: I8e8f1f5b140b64c86754b916e626eb50f0707d70 Reviewed-on: https://chromium-review.googlesource.com/530846 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#46006}
-
Michael Starzinger authored
R=mvstanton@chromium.org BUG=v8:6408 Change-Id: I228d276670a3540cdc593442ae79084b84a915d3 Reviewed-on: https://chromium-review.googlesource.com/538617Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45995}
-
Michael Starzinger authored
This removes both {BailoutId} as well as {TypeFeedbackId} numbers from almost all AST nodes. The only exception are {IterationStatement} nodes which still require an ID for on-stack replacement support. R=verwaest@chromium.org BUG=v8:6409 Change-Id: I5f7b7673ae5797b9cbc9741144d304f0d31d4446 Reviewed-on: https://chromium-review.googlesource.com/538792 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#45991}
-
- 16 Jun, 2017 2 commits
-
-
Michael Starzinger authored
R=jarin@chromium.org BUG=v8:6408 Change-Id: I1bc4f8f5ba37cf8a3632939356f56231ccc3226f Reviewed-on: https://chromium-review.googlesource.com/535458 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#45978}
-
jarin authored
This is in preparation for lowering monomorphic loads during graph building. This essentially moves the parts that will be shared to a separate class/file (proparty-access-builder.(cc|h)). I should say that we will not want to do accessor inlining during graph building because that would require us to create frame states (which is the thing we would like to avoid doing). Review-Url: https://codereview.chromium.org/2936673005 Cr-Commit-Position: refs/heads/master@{#45973}
-
- 15 Jun, 2017 1 commit
-
-
Adam Klein authored
This reverts commit 8196e102. Reason for revert: Performance regression due to hashcode lookup. Original change's description: > [builtins] Move most WeakMap/WeakSet code from JS to C++ builtins > > They were already implemented mostly in C++ (only error/negative > cases were handled in script), so this is mostly just a cleanup. > Only the constructors remain in script after this CL. > > Bug: v8:6354 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I5b3579337a8e33dc30d49c2da5cfd42baec697bb > Reviewed-on: https://chromium-review.googlesource.com/531670 > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Commit-Queue: Adam Klein <adamk@chromium.org> > Cr-Commit-Position: refs/heads/master@{#45924} TBR=adamk@chromium.org,cbruni@chromium.org,gsathya@chromium.org Bug: v8:6354, chromium:733238 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ia5a741b9587886298f3ca057f6a6adeba556b8e0 Reviewed-on: https://chromium-review.googlesource.com/537207Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#45966}
-
- 14 Jun, 2017 1 commit
-
-
jshin authored
Use ICU to check ID_Start, ID_Continue and WhiteSpace even for BMP when V8_INTL_SUPPORT is on (which is default). Change LineTerminator::Is() to check 4 code points from ES#sec-line-terminators instead of using tables and Lookup function. Remove Lowercase::Is(). It's not used anywhere. Update webkit/{ToNumber,parseFloat}.js to have the correct expectation for U+180E and the corresponding expected files. This is a follow-up to an earlier change ( https://codereview.chromium.org/2720953003 ). CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_win_dbg,v8_mac_dbg;master.tryserver.chromium.android:android_arm64_dbg_recipe CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_linux_noi18n_rel_ng BUG=v8:5370,v8:5155 TEST=unittests --gtest_filter=CharP* TEST=webkit: ToNumber, parseFloat TEST=test262: built-ins/Number/S9.3*, built-ins/parse{Int,Float}/S15* TEST=test262: language/white-space/mong* TEST=test262: built-ins/String/prototype/trim/u180e TEST=mjsunit: whitespaces Review-Url: https://codereview.chromium.org/2331303002 Cr-Commit-Position: refs/heads/master@{#45957}
-
- 13 Jun, 2017 4 commits
-
-
Adam Klein authored
They were already implemented mostly in C++ (only error/negative cases were handled in script), so this is mostly just a cleanup. Only the constructors remain in script after this CL. Bug: v8:6354 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I5b3579337a8e33dc30d49c2da5cfd42baec697bb Reviewed-on: https://chromium-review.googlesource.com/531670Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#45924}
-
Sathya Gunasekaran authored
Bug: v8:5717 Change-Id: I0e900b46a314a272206798aab8af5ccbb7f91fd3 Reviewed-on: https://chromium-review.googlesource.com/528315Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#45907}
-
Marja Hölttä authored
This is an unexciting CL (doesn't make the build step situation any better) but enables moving FixedArray & co next. BUG=v8:5402,v8:6474 Change-Id: Ia36eb3973e6242f6f68e02b9f583dc552d48422f Reviewed-on: https://chromium-review.googlesource.com/529168 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45889}
-
Michael Starzinger authored
The AST-based graph builder is by now only used for asm.js code. This change hard-codes this assumption into the compilation pipeline and hence allows us to remove support pertaining to deoptimization from optimized code that was not derived from bytecode. R=jarin@chromium.org BUG=v8:6409 Change-Id: I1138f16f663db5b9ee34e3110184067b8fcffc8b Reviewed-on: https://chromium-review.googlesource.com/531026 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#45887}
-
- 12 Jun, 2017 3 commits
-
-
Ulan Degenbaev authored
The fence ensures that the concurrent marker observes consistent state of mark-bits for newly allocated objects. The patch also moves Bitmap functions to cc file and removes non-atomic versions of SetRange and ClearRange. BUG=chromium:694255 Change-Id: I466bef654f3d4a21b7aaebdfd6d5a39ddb5f2a0a Reviewed-on: https://chromium-review.googlesource.com/530367Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45868}
-
Andreas Haas authored
This CL is the first step in introducing a compilation manager for asynchronous compile jobs in WebAssembly. The compilation manager holds a list of currently active AsyncCompileJobs. With the compilation manager these compile jobs get deallocated when the isolate shuts down. Note that this CL is not enough to provide a graceful isolate shutdown. For this we have to wait for all compilation tasks to finish before we shut down, and we have to make the tasks stateless. I plan to do these changes in separate CLs. R=clemensh@chromium.org, mtrofin@chromium.org BUG=v8:6436 Change-Id: I9a6e165dd2ef6d33944ca303fed49f7940eea7a2 Reviewed-on: https://chromium-review.googlesource.com/528079Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#45858}
-
Marja Hölttä authored
BUG=v8:5402,v8:6474 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Id38249fe9dc88001218aa1faa1b31c9d2f9703d1 Reviewed-on: https://chromium-review.googlesource.com/528102 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45853}
-
- 11 Jun, 2017 1 commit
-
-
scottmg authored
Follows https://codereview.chromium.org/2931143002/. Sufficient to link d8 with target_os="fuchsia" in Chrome. No implementations of platform functions yet, just stubs. BUG=chromium:731217 Review-Url: https://codereview.chromium.org/2932053004 Cr-Commit-Position: refs/heads/master@{#45832}
-
- 09 Jun, 2017 1 commit
-
-
Clemens Hammacher authored
base::Optional is a replacement for std::optional, until we switch to C++17 and can use std::optional directly. The implementation is copied from chromium's base::Optional, but put in the {v8::base} namespace instead of just {base}. Also, the specialization of std::hash for base::Optional is omitted, since it's disallowed in the style guide. A first use in the AsmJsParser is introduced, if that one sticks, I will refactor more uses of std::unique_ptr to use base::Optional instead, avoiding the heap allocation. R=mstarzinger@chromium.org BUG=v8:6474 Change-Id: I019599d4bf9ff0105bf592dfb96d6050feba18ae Reviewed-on: https://chromium-review.googlesource.com/528884 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#45810}
-
- 08 Jun, 2017 1 commit
-
-
bmeurer authored
This splits the monolithic Apply builtin into several smaller builtins, namely CallVargargs and ConstructVarargs, which accept a length and a FixedArray of elements and deal with the actual stack manipulation, and CallWithArrayLike / ConstructWithArrayLike that deal with getting the elements from the receiver (for Function.prototype.apply, Reflect.apply and Reflect.construct), which can now be written using the CSA. The idea is that these builtins can be reused by TurboFan directly in the future when we optimize apply better, and that we can also reuse the core logic in the handling of spread calls/constructs. R=petermarshall@chromium.org BUG=v8:4587,v8:5269 Review-Url: https://codereview.chromium.org/2930623002 Cr-Commit-Position: refs/heads/master@{#45794}
-
- 07 Jun, 2017 2 commits
-
-
Andreas Haas authored
This CL extracts the classes CompilationHelper, InstantiationHelper, and AsyncCompileJob from wasm-module.cc and puts them into module-compiler.{h|cc}. This is necessary to introduce a WasmCompilationManager which is known to the isolate and manages the lifetime of all AsyncCompileJobs. In addition to the mechanical changes of copying the code and splitting class declaration from instantiation, I did the following changes: * I renamed the CompilationHelper to ModuleCompiler. * A finalizer function is passed to the InstantiationHelper as a parameter. * Adjusted UpdateDispatchTable in wasm-module.cc to make it available in wasm-module.h, also with the internal signature. * Duplicate the ResolvePromise/RejectPromise helper functions. I did not rename InstantiationHelper because I could not come up with a good name, and it could benefit from a small special refactoring anyways. BUG=v8:6436 R=clemensh@chromium.org, mtrofin@chromium.org Change-Id: I4abe854c36dfc995b34c9d7b3e7ec0f4f0aa562e Reviewed-on: https://chromium-review.googlesource.com/525572 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Mircea Trofin <mtrofin@chromium.org> Cr-Commit-Position: refs/heads/master@{#45773}
-
Ross McIlroy authored
Adds support for lowering of ToPrimitiveToString and StringConcat bytecodes to the corresponding builtins. As part of this, moves the interpreter implementation of these operations into the appropriate builtin generators and add builtin support for them. Also adds TailCallRuntimeN operator to code-assembler which enables tail calling a runtime function when the arguments have already been pushed onto the stack. BUG=v8:6243 Change-Id: Id5c851bc42e4ff490d9a23a8990ae331c7eac73e Reviewed-on: https://chromium-review.googlesource.com/515362 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45756}
-