- 26 Jul, 2018 1 commit
-
-
Andreas Haas authored
Stack parameters on arm64 require padding. Since the stack areas for parameters and returns should not overlap, we have to pad the parameters already during the construction of the CallDescriptor so that we can set the correct stack offset for returns. R=mstarzinger@chromium.org Bug: chromium:838098 Change-Id: I23389dc35037054b750e61ea6b1bfdfc4c5bc868 Reviewed-on: https://chromium-review.googlesource.com/1150178Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54716}
-
- 25 Jul, 2018 3 commits
-
-
Marja Hölttä authored
This significantly reduces the build time when modifying wasm files: before touching all wasm headers required 684 steps to rebuild, now it's 216. BUG=v8:7754,v8:7490 TBR=clemensh@chromium.org, ulan@chromium.org, tebbi@chromium.org, verwaest@chromium.org, jgruber@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I9003b5b73ac568a29688c5f97ec718c9de8aaaef Reviewed-on: https://chromium-review.googlesource.com/1150163 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54699}
-
Leszek Swirski authored
This reverts commit 9d18a7fd. Reason for revert: Breaks build https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20noi18n%20-%20debug/21856 Original change's description: > [iwyu] Remove sfi-inl.h -> wasm include > > This significantly reduces the build time when modifying wasm > files: before touching all wasm headers required 684 steps to > rebuild, now it's 216. > > BUG=v8:7754,v8:7490 > > Change-Id: Id7ff6f9063168556daad4840ee614cf68144cdb2 > Reviewed-on: https://chromium-review.googlesource.com/1145264 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54681} TBR=ulan@chromium.org,marja@chromium.org,titzer@chromium.org,jgruber@chromium.org,clemensh@chromium.org,tebbi@chromium.org,bmeurer@chromium.org,verwaest@chromium.org Change-Id: I3b4087916f65b16db75974dba58914c8ea377a08 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7754, v8:7490 Reviewed-on: https://chromium-review.googlesource.com/1149920Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54683}
-
Marja Hölttä authored
This significantly reduces the build time when modifying wasm files: before touching all wasm headers required 684 steps to rebuild, now it's 216. BUG=v8:7754,v8:7490 Change-Id: Id7ff6f9063168556daad4840ee614cf68144cdb2 Reviewed-on: https://chromium-review.googlesource.com/1145264 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54681}
-
- 24 Jul, 2018 1 commit
-
-
Michael Starzinger authored
R=ahaas@chromium.org Change-Id: I7c6fd17f36d33451ce7605e74002515295c7ad1c Reviewed-on: https://chromium-review.googlesource.com/1145195Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54629}
-
- 23 Jul, 2018 1 commit
-
-
Ross Mcilroy authored
Replace with isolate version. BUG=v8:7754 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Iac7091b983960d22b892074c5fd0a97dee9025c9 Reviewed-on: https://chromium-review.googlesource.com/1146332 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#54604}
-
- 19 Jul, 2018 1 commit
-
-
Andreas Haas authored
The WebAssembly spec is not fully deterministic: the sign bit of NaN can be arbitrary. This sign bit can be observed by several WebAssembly opcodes. In the testcase the sign bit of NaN makes the difference between terminating code and an infinite loop. In the libfuzzer fuzzer we have to prevent infinite loops ourselves. At the moment we do this by only execute generated code of WebAssembly modules for which the interpretation of the code ends in a limited number of steps. With the non-determinism described above we cannot guarantee the absence of infinite loops with this method. Therefore we stop now to execute generated code of WebAssembly modules for which we observe possible non-determinism in the interpreter. R=clemensh@chromium.org Bug: chromium:863829 Change-Id: I461d67df87d672bed25d6c915ba7ea5134cb5890 Reviewed-on: https://chromium-review.googlesource.com/1141945Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54541}
-
- 17 Jul, 2018 1 commit
-
-
Max Moroz authored
Bug: Chromium:798921 Change-Id: I6cd3dbe49f586cdedfc70c6c6ad83391240a65d9 Reviewed-on: https://chromium-review.googlesource.com/1138550Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Max Moroz <mmoroz@chromium.org> Cr-Commit-Position: refs/heads/master@{#54494}
-
- 16 Jul, 2018 1 commit
-
-
Max Moroz authored
Bug: Chromium:841975 Change-Id: Ife77805fa3977dc874087ca7ae810eded2ae1c55 Reviewed-on: https://chromium-review.googlesource.com/1136986Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Max Moroz <mmoroz@chromium.org> Cr-Commit-Position: refs/heads/master@{#54468}
-
- 13 Jul, 2018 2 commits
-
-
Dan Elphick authored
All auto-generated with some fix-ups including marking the following classes as NeverReadOnlySpaceObject so their GetIsolate/GetHeap methods are safe to use: Code, CodeDataContainer, AbstractCode, DeoptimizationData, CompilationCacheTable, NormalizedMapCache, Script, SharedFunctionInfo TBR=yangguo@chromium.org Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I6cb5dcca88a0bc99b5afe80f553e06a661b5da3c Reviewed-on: https://chromium-review.googlesource.com/1135306 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54439}
-
Michael Starzinger authored
The code under test is handling of multi-return values in TurboFan and hence actually independent of WebAssembly. The only reason to generate WasmCode is in order to use the WebAseembly linkages. This changes the generated code to have {STUB} kind instead of {WASM_FUNCTION} kind to avoid having stack checks in the generated code which would require a proper WasmInstanceObject to be allocated. R=ahaas@chromium.org BUG=chromium:862508 Change-Id: I4feb7bff1a42bbf59cfc5f249f2e0585ce7011ad Reviewed-on: https://chromium-review.googlesource.com/1136438Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54436}
-
- 12 Jul, 2018 2 commits
-
-
Clemens Hammacher authored
Currently the fuzzer only tests Turbofan and Liftoff in isolation. In order to test that both tiers use the same ABI, it should also test calls from one tier to the other. This CL introduces a new flag which controls which function will be compiled by which tier, and uses that in the fuzzer. R=ahaas@chromium.org Bug: chromium:862931, v8:6600 Change-Id: I450b906700972cfdb496b1734faed9f8208d652f Reviewed-on: https://chromium-review.googlesource.com/1134775 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54409}
-
Clemens Hammacher authored
Instead of passing {uint8_t*, size_t} pairs as arguments, pass {Vector<uint8_t>}. This is less error prone and {Vector} provides some helpful methods. R=ahaas@chromium.org Bug: v8:7754 Change-Id: I7469054774618e0bd5c9d38501759b1b2c51d104 Reviewed-on: https://chromium-review.googlesource.com/1134773Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54406}
-
- 06 Jul, 2018 1 commit
-
-
Sigurd Schneider authored
This CL surfaces AssemblerOptions to CodeAssembler::GenerateCode and to pipeline methods. To allow forward declaring AssemblerOptions, AssemblerBase::Options was moved out of the AssemblerBase class. Bug: v8:6666 Change-Id: If9fc50d3d4767bb5dd39a0c3b6e094021f4cae2b Reviewed-on: https://chromium-review.googlesource.com/1127039 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54286}
-
- 05 Jul, 2018 1 commit
-
-
Andreas Haas authored
In the WebAssembly fuzzers we detect infinite loops with the interpreter: if the interpreter does not finish after a finite number of steps, we do not execute the compiled code. However, we cannot redirect the start function to the interpreter in the fuzzer, and therefore we cannot detect infinite loops in the start function. With this CL we avoid the problem completely by not instantiating a module in the fuzzer which has a start function. Note that the module still gets compiled. R=clemensh@chromium.org Bug: chromium:858914 Change-Id: Icbbe9a003544918d5267cdd1d9405b21bb681133 Reviewed-on: https://chromium-review.googlesource.com/1126766 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54246}
-
- 03 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
The current output of release builds is not very helpful, as it does not contain the line number, nor the values of {expect_exception} or {i_isolate->has_pending_exception()}. R=ahaas@chromium.org Bug: chromium:854011 Change-Id: I0bc1b8be6151d5420310eb67b2ebd0dc866fc9a6 Reviewed-on: https://chromium-review.googlesource.com/1122869Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54164}
-
- 28 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
Instead of storing both the {NativeModule} and the {WasmModule} in a {Managed} object, just store the {WasmModule} in the {NativeModule} directly. This fixes crashes that happen if the {Managed<WasmModule>} dies before the {Managed<NativeModule>}. R=mstarzinger@chromium.org Bug: chromium:854794, v8:7879, v8:7889 Change-Id: I6b11729943fe7a03d225138782655ee5dafd26a6 Reviewed-on: https://chromium-review.googlesource.com/1118171 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54090}
-
- 23 Jun, 2018 1 commit
-
-
Deepti Gandluri authored
R=clemensh@chromium.org CC=titzer@chromium.org Change-Id: Ie9cfc0902e765fe3c7945540a609be9901faedff Reviewed-on: https://chromium-review.googlesource.com/1110847 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53986}
-
- 22 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
Before flipping the flag, some tests need to be adapted. This CL prepares these tests, such that the flag flip CL really just flips a flag. R=titzer@chromium.org, hablich@chromium.org Bug: v8:6600, chromium:787421 Change-Id: I8030df69cda5f3fb81354350a37f65c0d1c669bd Reviewed-on: https://chromium-review.googlesource.com/1110363Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Hablich <hablich@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53959}
-
- 21 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
Other fuzzers already have this ability. This CL adds it to the fuzzer. The input has to be valid bytes, otherwise we cannot generate the text representation. R=titzer@chromium.org CC=gdeepti@chromium.org Change-Id: If1ba8accc707bee3b042e93f4201949f0233c90e Reviewed-on: https://chromium-review.googlesource.com/1109794 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53926}
-
- 19 Jun, 2018 1 commit
-
-
Sigurd Schneider authored
TurboFan returned null handles if compilation did not succeed. This CL changes that to a MaybeHandle to make it explicit that client code needs to handle the error. Bug: v8:7856 Change-Id: I6087e6263faa1150b9788213dd22c398b4a2fc2d Reviewed-on: https://chromium-review.googlesource.com/1104688 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#53824}
-
- 18 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
We currently store the {WasmModule} (generated during decoding) in a unique_ptr and pass ownership to the {WasmModuleObject} after compilation. I plan to move the {Managed<NativeModule>} from {WasmCompiledModule} to {WasmModuleObject}, which will force us to create the {WasmModuleObject} *before* compilation, so that the {CompilationState} is available during compilation. This CL prepares that refactoring by storing the {WasmModule} in a {shared_ptr} in the {AsyncCompileJob}. Note that it will eventually be stored in a {shared_ptr} in the {Managed} anyway. R=titzer@chromium.org Change-Id: Iac5e3c1067af2801e938f77a455a68807801526a Reviewed-on: https://chromium-review.googlesource.com/1104117 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53801}
-
- 14 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
This is a reland of 0909dbe3. Added missing V8_EXPORT_PRIVATE to AndroidLogStream. TBR=mstarzinger@chromium.org Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53692} Bug: v8:7820 Change-Id: I8164bad78a401dbe4246c9ffcacd050fe511ed58 Reviewed-on: https://chromium-review.googlesource.com/1100636Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53733}
-
Michael Achenbach authored
This reverts commit 0909dbe3. Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/1099143 Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53692} TBR=mstarzinger@chromium.org,jarin@chromium.org,jgruber@chromium.org,clemensh@chromium.org,bmeurer@chromium.org Change-Id: Iadadd9a0df10dca0fad647138a83db50148e864d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7820 Reviewed-on: https://chromium-review.googlesource.com/1100635Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53725}
-
- 13 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
The often used construct {OFStream(stdout)} does not work on Android. This CL introduces an {StdoutStream} which behaves exactly like {OFStream(stdout)} on non-android platforms, and redirects to the Android log on appropriate systems and configurations. R=mstarzinger@chromium.org Bug: v8:7820 Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b Reviewed-on: https://chromium-review.googlesource.com/1088911Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53692}
-
- 12 Jun, 2018 1 commit
-
-
Ben L. Titzer authored
The isolate is mainly used for accounting purposes. As such, it doesn't need a field in the WasmCodeManager, and cannot have one if it is to be made isolate independent. Instead, pass the isolate explicitly in the appropriate cases. R=mstarzinger@chromium.org BUG=v8:7424 Change-Id: I539c2b33692e57605a280530bd704ef25269ad0f Reviewed-on: https://chromium-review.googlesource.com/1073412 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53676}
-
- 05 Jun, 2018 1 commit
-
-
Dan Elphick authored
Removes most[1] explicit calls to GetIsolate() in parsing/ by passing it through calling function functions and implicit calls via the single argument Handle constructor and handle function. [1] One remains in preparsed-scope-data.cc: data_->GetIsolate()->PushStackTraceAndDie() Bug: v8:7786 Change-Id: I4c445995a73c19bdf4649b65487b7443d56ddd2a Reviewed-on: https://chromium-review.googlesource.com/1085057Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#53513}
-
- 01 Jun, 2018 1 commit
-
-
Dan Elphick authored
Remove all uses of GetIsolate/GetHeap by passing Isolate in from all call sites. Bug: v8:7786 Change-Id: I64ff8d5796db9d602e86bff4d0b9297cbe700d0d Reviewed-on: https://chromium-review.googlesource.com/1080819Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#53467}
-
- 24 May, 2018 1 commit
-
-
Andreas Haas authored
At the moment, WebAssembly.instantiate(bytes) is implemented by desugaring it to WebAssembly.compile(bytes).then(WebAssembly.instantiate). The problem is that the {then} in this snippet is observable. With this CL I introduce a CompilationResultResolver which allows to do the desugaring internally and thereby make the {then} unobservable. Unfortunately the result of WebAssembly.instantiate(bytes) is different than the result of WebAssembly.instantiate(module). Therefore I also introduced an InstantiationResultResolver for symmetry with WebAssembly.compile. R=mstarzinger@chromium.org Bug: chromium:837417 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2d98e03d65f2ada19041d5a9e2df5da91b24ccca Reviewed-on: https://chromium-review.googlesource.com/1059783 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53347}
-
- 07 May, 2018 1 commit
-
-
Andreas Haas authored
R=clemensh@chromium.org CC=titzer@chromium.org Change-Id: I4951bf7ffc8baf51225e7bef60349186811b9f76 Reviewed-on: https://chromium-review.googlesource.com/1024037 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53020}
-
- 30 Apr, 2018 2 commits
-
-
Georgia Kouveli authored
This includes the following changes: - Limit code space to 128 MB. - Use direct branches wherever possible. - Where not possible, continue using load literal followed by an indirect branch. - Sort RelocInfo by target_address_address for the serializer, since mixing load literal instructions and branch instructions messes up that order. - Ensure we always wipe out targets in the serializer (not just for the snapshot) in order to be able to distinguish between constant pool entries and branch instructions. Change-Id: I1a1029ce2a5f72a3a94802daf267d14a42c7c790 Reviewed-on: https://chromium-review.googlesource.com/939175Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/master@{#52885}
-
Marja Hölttä authored
BUG=v8:7490,v8:7570 Change-Id: I74fa43a747b0d399c700acc43eb82e15ea90ba16 Reviewed-on: https://chromium-review.googlesource.com/1032736Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#52876}
-
- 27 Apr, 2018 1 commit
-
-
Clemens Hammacher authored
Linkage-related methods were declared in wasm-compiler.h and implemented in wasm-linkage.cc. This required all users of e.g. wasm call descriptors to include the whole wasm compiler header. Also, some wasm linkage information is independent of turbofan and also used outside of the compiler directory. This CL splits off wasm-linkage.h (with minimal includes) and puts it in src/wasm. This allows to use that information without including compiler headers (will clean up several uses in follow-up CLs). R=mstarzinger@chromium.org, titzer@chromium.org Bug: v8:7570 Change-Id: Ifcae70b4ea7932cda30953b325c2b87c4176c598 Reviewed-on: https://chromium-review.googlesource.com/1013701Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52849}
-
- 24 Apr, 2018 2 commits
-
-
Kim-Anh Tran authored
Wasm tier-up first compiles the whole module using Liftoff, and then using Turbofan. The idea is to achieve fast start-up times by first running Liftoff-compiled code. In the meantime we finish compilation with Turbofan, and replace the Liftoff-compiled code as soon as Turbofan finished compilation, thus achieving high performance. Tier-up is enabled through the flag FLAG_wasm_tier_up. Bug: v8:6600 Change-Id: I70552969c53d909a591666a1e7ce1ee1419b2f34 Reviewed-on: https://chromium-review.googlesource.com/1010422 Commit-Queue: Kim-Anh Tran <kimanh@google.com> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52759}
-
Andreas Haas authored
This CL splits the definition of ValueType and its helper functions into its own header file. R=clemensh@chromium.org Bug: v8:7570 Change-Id: I3aa776edb45839d7d38836e131df45732c685310 Reviewed-on: https://chromium-review.googlesource.com/1021810 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52758}
-
- 16 Apr, 2018 1 commit
-
-
Vincent Belliard authored
First version which can compile a very basic code. Change-Id: I3b98412a5ca39a28f8fe5b60516b82c6981dd187 Reviewed-on: https://chromium-review.googlesource.com/993232 Commit-Queue: Vincent Belliard <vincent.belliard@arm.com> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52622}
-
- 14 Apr, 2018 1 commit
-
-
Jakob Kummerow authored
The "Address" type is V8's general-purpose type for manipulating memory addresses. Per the C++ spec, pointer arithmetic and pointer comparisons are undefined behavior except within the same array; since we generally don't operate within a C++ array, our general-purpose type shouldn't be a pointer type. Bug: v8:3770 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779 Reviewed-on: https://chromium-review.googlesource.com/988657 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52601}
-
- 09 Apr, 2018 1 commit
-
-
Jakob Kummerow authored
There is no good reason to have the meat of most objects' initialization logic in heap.cc, all wrapped by the CALL_HEAP_FUNCTION macro. Instead, this CL changes the protocol between Heap and Factory to be AllocateRaw, and all object initialization work after (possibly retried) successful raw allocation happens in the Factory. This saves about 20KB of binary size on x64. Original review: https://chromium-review.googlesource.com/c/v8/v8/+/959533 Originally landed as r52416 / f9a2e24b Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Id072cbe6b3ed30afd339c7e502844b99ca12a647 Reviewed-on: https://chromium-review.googlesource.com/1000540 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52492}
-
- 06 Apr, 2018 2 commits
-
-
Michael Achenbach authored
This reverts commit f9a2e24b. Reason for revert: gc stress failures not all fixed by follow up. Original change's description: > [cleanup] Refactor the Factory > > There is no good reason to have the meat of most objects' initialization > logic in heap.cc, all wrapped by the CALL_HEAP_FUNCTION macro. Instead, > this CL changes the protocol between Heap and Factory to be AllocateRaw, > and all object initialization work after (possibly retried) successful > raw allocation happens in the Factory. > > This saves about 20KB of binary size on x64. > > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: Icbfdc4266d7be8b48d2fe085f03411743dc6a0ca > Reviewed-on: https://chromium-review.googlesource.com/959533 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52416} TBR=jkummerow@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,hpayer@chromium.org Change-Id: Idbbc53478742f3e9525eee83342afc6aedae122f No-Presubmit: true No-Tree-Checks: true No-Try: true Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Reviewed-on: https://chromium-review.googlesource.com/999414Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52420}
-
Jakob Kummerow authored
There is no good reason to have the meat of most objects' initialization logic in heap.cc, all wrapped by the CALL_HEAP_FUNCTION macro. Instead, this CL changes the protocol between Heap and Factory to be AllocateRaw, and all object initialization work after (possibly retried) successful raw allocation happens in the Factory. This saves about 20KB of binary size on x64. Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Icbfdc4266d7be8b48d2fe085f03411743dc6a0ca Reviewed-on: https://chromium-review.googlesource.com/959533 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#52416}
-