- 15 Jan, 2019 25 commits
-
-
Tobias Tebbi authored
A first step towards using Turbofan's MemoryOptimizer for CSA/Torque. Change-Id: I2ce9eaa602ea6f19a679e1cf5516c309a5a5051b Reviewed-on: https://chromium-review.googlesource.com/c/1406675Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#58830}
-
Toon Verwaest authored
The parenthesized flag guarantees that the contents was validated as a possible arrow head. By collapsing a parenthesized expression with an outer binary expression we invalidly kept the flag and invalidly assumed that the collapsed expression was validated. Bug: chromium:921382 Change-Id: I207dcbfd228a1ed216130226fdb7ea045b89b85a Reviewed-on: https://chromium-review.googlesource.com/c/1412172 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#58829}
-
Leszek Swirski authored
This is more idiomatic than using a Promise. Change-Id: I61443e90ef1c0c589284851ea9be410153919eb5 Reviewed-on: https://chromium-review.googlesource.com/c/456278Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#58828}
-
Clemens Hammacher authored
We often use ResultBase or VoidResult to store or pass wasm errors (errors with locations). This CL extracts a WasmError class which can store an error (can also be empty), and Result<T> which stores an error or a T (exactly one of them). R=titzer@chromium.org Bug: v8:8689 Change-Id: I3f5203559984a0ae8757e0130a9184957fa28df5 Reviewed-on: https://chromium-review.googlesource.com/c/1409365 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58827}
-
Leszek Swirski authored
In ShortPrint, print a # before a string's length if it is internalized Change-Id: Ifed80b358a4502c72d8a3d08b3b9399afe308d0f Reviewed-on: https://chromium-review.googlesource.com/c/1411539Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#58826}
-
Stephan Herhut authored
The blazor benchmark wobbles around by 5% with seemingly unrelated changes to the generated code. I suspect this is due to moving target adresses of the switch statement for the interpreter. Generally, it would make sense to align targets for switch statements as per general optimization guidelines. To keep code growth in bounds, this change only enables this for switch statements inside of loops. Local measurements show an improvement of around 5% for blazor and hopefully the benchmark will be more stable moving forward. Bug: chromium:919986 chromium:921477 Change-Id: I69df38f902d4fcc65af9e95a63ca1f7f14e0fa09 Reviewed-on: https://chromium-review.googlesource.com/c/1411637Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#58825}
-
Andreas Haas authored
R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: If469467663e632a1dba3bd55ace830e1b2f38f7e Reviewed-on: https://chromium-review.googlesource.com/c/1409427 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58824}
-
Toon Verwaest authored
A sloppy function in a block scope implicitily creates a var in the outer declaration scope if it's not blocked. The assignment created reads the local lexical declaration for the function. The reference introduced automatically takes part in NeedsHoleCheck, requiring the reference to have a valid position. Since the assignment will happen after the local declaration, we give the end_position() of the closure as the position of the reference, so hole checks can be omitted. Bug: chromium:917755 Change-Id: Iee0e042b2463f97f05075f9eec09dac8c6eaf539 Reviewed-on: https://chromium-review.googlesource.com/c/1408991Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58823}
-
Andreas Haas authored
With this CL we support importing mutable anyref globals. The CL contains the following changes: * We store a reference to the buffer of the imported global in `WasmInstance::imported_mutable_globals_buffer`. This FixedArray is already used to keep the ArrayBuffers of value-typed imported mutable globals alive but was not accessed otherwise. * We store the offset in the buffer of the imported global in `WasmInstance::imported_mutable_globals`. This `Address`-array is used for value-typed imported mutalbe globals to store direct pointers into the backing store of the ArrayBuffer of the imported global. * In wasm-compiler.cc we generate code to load these fields and then load or store globals. * in module-compiler.cc I removed the counter variable `next_imported_mutable_global_index`. The variable was only used for a DCHECK. I replaced the DCHECK with a slightly weaker DCHECK now. * Tests. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I11f0f4d8637c98eded5fb2eec44bc8ead8ed5c7b Reviewed-on: https://chromium-review.googlesource.com/c/1409169 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58822}
-
Tamer Tas authored
V8 testrunner is loading every test it has to run into memory greedily in order to sort by slowness of the test case. The memory and CPU overhead for loading the test-suites are non-trivial. This CL restructures it by changing the sorting method. R=machenbach@chromium.org CC=sergiyb@chromium.org,yangguo@chromium.org Bug: v8:8174 Change-Id: I08331182147b92cf4ac54823eea0e2b472f51e84 Reviewed-on: https://chromium-review.googlesource.com/c/1406684 Commit-Queue: Tamer Tas <tmrts@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#58821}
-
Jakob Gruber authored
--jitless -> --no-opt -> --no-validate-asm -> --wasm-interpret-all -> --no-asm-wasm-lazy-compilation -> --no-wasm-lazy-compilation Note that wasm still isn't supported in jitless mode since it generates code at runtime even with --wasm-interpret-all. Drive-by: Fail early when trying to compile irregexp code in jitless mode. Cq-Include-Trybots: luci.v8.try:v8_linux_arm_lite_rel_ng Bug: v8:7777 Change-Id: I7f0421f71efeaaeb030ed9ec268d12a659667acf Reviewed-on: https://chromium-review.googlesource.com/c/1406677Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58820}
-
Dan Elphick authored
Change Isolate::SetWasmCompileStreamingCallback from V8_DEPRECATE_SOON to V8_DEPRECATED. Bug: v8:8562 Change-Id: I57b2e72817fe5b580fe6dc123a2389247010cb43 Reviewed-on: https://chromium-review.googlesource.com/c/1411634Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#58819}
-
Clemens Hammacher authored
EnumSet currently lives in src/utils.h, which is a conglomerate of many different helper functions and classes. In order to remove unneeded include, move the EnumSet to its own header. R=titzer@chromium.org Bug: v8:7490, v8:8562 Change-Id: I979814167e87b914e9807b03e342d8b34e514331 Reviewed-on: https://chromium-review.googlesource.com/c/1409430 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58818}
-
Ben L. Titzer authored
The table.drop bytecode "drops" the backing storage for an element initializer. In the V8 implementation, this is a nop, other than updating a per-instance boolean array so that two drops of the same segment or a drop of an active segment will trap. This is implemented with inline code in TurboFan in order to be symmetric to memory.drop, but could as easily be a runtime call to be supported in Liftoff. R=mstarzinger@chromium.org CC=binji@chromium.org BUG=v8:7747 Change-Id: Ic017398eaa764dd3a9ff19523453ff7142c9abf6 Reviewed-on: https://chromium-review.googlesource.com/c/1408996Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58817}
-
Leszek Swirski authored
Change-Id: Ia39d2157eb7c0c644348e1762ee32fef84c6b51d Reviewed-on: https://chromium-review.googlesource.com/c/1409428 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#58816}
-
Sigurd Schneider authored
Notry: true Bug: v8:7327 Change-Id: I9cdea29db2b409d773a16e3d6c29ef4325257162 Reviewed-on: https://chromium-review.googlesource.com/c/1409437 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#58815}
-
Sigurd Schneider authored
This allows to reset the layout to the the inital layout of the graph, which only contains the control nodes. Change-Id: I7ab9fb1615057df99983369cd0fcdd42a68e1924 Notry: true Bug: v8:7327 Reviewed-on: https://chromium-review.googlesource.com/c/1409436 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#58814}
-
Sigurd Schneider authored
This enables per-phase toolbox items, which makes the toolbar easier to understand and use. Change-Id: I1b44d28595c118f0ba55dd64eea54415b51b93aa Notry: true Bug: v8:7327 Reviewed-on: https://chromium-review.googlesource.com/c/1409435Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58813}
-
Yang Guo authored
R=mslekova@chromium.org NOTRY=true Change-Id: I6150e2fe7e55d7aad61875ae092e1c9109839256 Reviewed-on: https://chromium-review.googlesource.com/c/1411632 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#58812}
-
Predrag Rudic authored
Change-Id: I151a2fe17e169e7ed47ddfc0dc239a237b9084ff Reviewed-on: https://chromium-review.googlesource.com/c/1409424Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Predrag Rudic <prudic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#58811}
-
v8-ci-autoroll-builder authored
Rolling v8/base/trace_event/common: https://chromium.googlesource.com/chromium/src/base/trace_event/common/+log/889afc2..e31a170 Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/d419229..02ccb16 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/0e1cbc4..9d61cbb TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I210f686b598ac4ae82ac5f1814004a0376c89e89 Reviewed-on: https://chromium-review.googlesource.com/c/1410392Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#58810}
-
tzik authored
As a follow-up of https://crrev.com/c/1372857 that repordered the parameters of JSEntry, this CL updates JSEntry for S390 for new ordering. Bug: v8:8124 Change-Id: I7cd3b03b4000b40b157527174946af6d79f67065 Reviewed-on: https://chromium-review.googlesource.com/c/1405962 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58809}
-
Frank Tang authored
Change the code to reflect https://tc39.github.io/proposal-intl-locale/#sec-canonicalizelocalelist Bug: v8:8655 Change-Id: I114488dee854b7322a5719de13e4fb8b6f18283c Reviewed-on: https://chromium-review.googlesource.com/c/1400851 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#58808}
-
Frank Tang authored
Bug: v8:8657, v8:8236, v8:7684 Change-Id: I369a3b302ef70e3fa37208e5c7d1e2fcea1fa390 Reviewed-on: https://chromium-review.googlesource.com/c/1400852Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jungshik Shin <jshin@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#58807}
-
Jakob Kummerow authored
It is slightly faster than Page::FromAddress(o->address()) (saves one instruction), and more concise than Page::FromAddress(o->ptr()). Same for MemoryChunk::FromHeapObject(). Bug: v8:8562 Change-Id: I9dc2b787aed5cad2d4087850dfa2e8eb157ad225 Reviewed-on: https://chromium-review.googlesource.com/c/1405031 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#58806}
-
- 14 Jan, 2019 15 commits
-
-
Stephan Herhut authored
The raw wasm printer was not printing the last entry of the locals declarations. Now it does. Bug: v8:8562 Change-Id: Ib51c674b747f95079c544131f18462d203f0933f Reviewed-on: https://chromium-review.googlesource.com/c/1409364Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#58805}
-
Matthew Dempsky authored
Fuchsia VMOs will be non-executable by default in the future (SEC-42), so we'll need to use zx_vmo_replace_as_executable to make it possible to map them into memory as executable. And in the mean time, this call is a no-op. SEC-42 TBR: mlippautz Change-Id: I4521559b163519ded4afa6b55e99f983e38b1de5 Reviewed-on: https://chromium-review.googlesource.com/c/1281824Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Wez <wez@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Wez <wez@chromium.org> Cr-Commit-Position: refs/heads/master@{#58804}
-
Adam Klein authored
This way we're not down to a single OWNER while hpayer is unavailable. Change-Id: Ic6a2b86a684b159d6349b39bf2ba0719672a5aaf Reviewed-on: https://chromium-review.googlesource.com/c/1407238Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#58803}
-
Deepti Gandluri authored
Change-Id: Icad57d5cdae273c0e2cd6c1e441c36908436b704 Bug: v8:8646 Reviewed-on: https://chromium-review.googlesource.com/c/1407179 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Aseem Garg <aseemgarg@chromium.org> Cr-Commit-Position: refs/heads/master@{#58802}
-
milad authored
Change-Id: Ibd2d9919ce47638debde8e59c10714c4836b9292 Reviewed-on: https://chromium-review.googlesource.com/c/1408388Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Joran Siu <joransiu@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58801}
-
Michael Achenbach authored
This reverts commit 138bcfc3. Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20TSAN/24434 Original change's description: > [cpu-profiler] Add more logging to find flaky failure > > There is a flaky 5x failure in the tree which I can't reproduce locally. > This extra logging will help flush out what the problem is. > > Bug: v8:8649 > > Change-Id: If36d2ce0f4feb398d7d746d69b417bb55a714422 > Reviewed-on: https://chromium-review.googlesource.com/c/1402787 > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58796} TBR=cbruni@chromium.org,petermarshall@chromium.org Change-Id: Iea4a950ddbbbbc753cffc605f0c0da049cdad03d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8649 Reviewed-on: https://chromium-review.googlesource.com/c/1409433Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#58800}
-
Sigurd Schneider authored
The URL must not have a leading slash, and the file needs to be included in the deployment script. TBR=neis@chromium.org Change-Id: Idd3fc25c052cb720d4956f630a8ddca7e5d36a1a Notry: true Bug: v8:7327 Reviewed-on: https://chromium-review.googlesource.com/c/1409432Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58799}
-
Deepti Gandluri authored
Change-Id: I450e199b041750c3d5e5428b673e4223c63639d3 Reviewed-on: https://chromium-review.googlesource.com/c/1407233Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#58798}
-
Ben L. Titzer authored
This refactoring CL moves all instantiation logic in its own file, separating it from the module compiler. R=ahaas@chromium.org Change-Id: I5a721c7357022dd7bf32f776b2ab0153f7dd68fc Reviewed-on: https://chromium-review.googlesource.com/c/1409429 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58797}
-
Peter Marshall authored
There is a flaky 5x failure in the tree which I can't reproduce locally. This extra logging will help flush out what the problem is. Bug: v8:8649 Change-Id: If36d2ce0f4feb398d7d746d69b417bb55a714422 Reviewed-on: https://chromium-review.googlesource.com/c/1402787 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#58796}
-
Leszek Swirski authored
This removes the iteration protocol from the parser entirely, and opens up future possibilities for more bytecodes implementing the various functions of the protocol. Change-Id: I316b8a92434d3b5f47927408a235ddaecd65d5bb Reviewed-on: https://chromium-review.googlesource.com/c/1403125 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#58795}
-
Ross McIlroy authored
BUG=v8:8653 Change-Id: I7cb6ef7046ca37474f46a04ae75110f0fa998d8a Reviewed-on: https://chromium-review.googlesource.com/c/1409425Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#58794}
-
Clemens Hammacher authored
The background compile tasks should not access the NativeModule during the main compile phase. This CL moves on of the accessed fields into the {CompilationEnv}. It is initialized from the existing field on the {NativeModule}. R=titzer@chromium.org Bug: v8:8689 Change-Id: I9738e2fb4681a035cbacf3c9e00b9e5cc9419416 Reviewed-on: https://chromium-review.googlesource.com/c/1409423Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58793}
-
Andreas Haas authored
When we run TurboFan compilation for WebAssembly on worker threads with default priority, we see in bug reports (https://crbug.com/914757) and in experiments that TurboFan compilation can block other, higher priority tasks. Therefore we want to post TurboFan compilation tasks with lower priority. A quick prototype showed that if we run all WebAssembly compilation with low priority, the problem described in https://crbug.com/914757 is fixed. R=adamk@chromium.org CC=rmcilroy@chromium.org Bug: chromium:920181 Change-Id: I85e2c0c6a96ff9ef165a23ef8eb531944b20f2b0 Reviewed-on: https://chromium-review.googlesource.com/c/1402790Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58792}
-
Ben L. Titzer authored
The --perf-prof flag generates unwanted .dump files, while the --perf-prof-unwinding-info flag enables the functionality under test here. R=jgruber@chromium.org BUG=chromium:913844 Change-Id: Ie5ee374977d6105854f42065600dac1bc5ba6df7 Reviewed-on: https://chromium-review.googlesource.com/c/1409363 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58791}
-