- 02 May, 2019 10 commits
-
-
Pierre Langlois authored
Improve code generation for stores with write barriers slightly by using the assembler's dedicated scratch registers (x16 and x17 on Arm64, ip on Arm) instead of allocating temporaries. To do this, we've done two things: - Use ip as a scratch register when loading page flags. - TurboAssembler::CallRecordWriteStub() now takes the offset of the slot that's written to rather than its address, removing the need to allocate a temporary register for it. In essence, we've gone from: ``` ;; Do the store. stur x19, [x9, #15] ;; Check *destination* object page flags and jump out-of-line. and x4, x9, #0xfffffffffff80000 ldr x4, [x4, #8] tbnz x4, #2, #+0x1e7c | ;; Check *source* object page flags. | `-> and x4, x19, #0xfffffffffff80000 | ldr x4, [xM, #8] |,--- tbz x4, #1, #-0x1e80 | ;; Compute address of slot. | add x5, x9, #0xf (15) | ;; Setup arguments to RecordWrite | stp x2, x3, [sp, #-32]! | stp x4, lr, [sp, #16] | stp x0, x1, [sp, #-16]! | mov x0, x9 ;; Object address in x9 | mov x1, x5 ;; Slot address in x5 | movz x2, #0x0 | movz x3, #0x100000000 | ;; Call RecordWrite | ldr x16, pc+2056 | blr x16 ``` Which allocates x4 and x5 as temporaries. To: ``` stur x19, [x9, #15] and x16, x9, #0xfffffffffff80000 ;; Using x16 instead of allocating x4. ldr x16, [x16, #8] tbnz x16, #2, #+0x1e7c | `-> and x16, x19, #0xfffffffffff80000 | ldr x16, [xM, #8] |,--- tbz x16, #1, #-0x1e80 | stp x2, x3, [sp, #-32]! | stp x4, lr, [sp, #16] | stp x0, x1, [sp, #-16]! | mov x0, x9 ;; Object address still in x9. | add x1, x9, #0xf (15) ;; Compute the slot address directly. | movz x2, #0x0 | movz x3, #0x100000000 | ldr x16, pc+2056 | blr x16 ``` Finally, `RecordWriteField()` does not need an extra scratch register anymore. Change-Id: Icb71310e7b8ab1ca83ced250851456166b337d00 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1505793 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61153}
-
Ben L. Titzer authored
R=mstarzinger@chromium.org Change-Id: Iefd80d3365369dbf9bfb9832640d90963253e603 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593082Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#61152}
-
Clemens Hammacher authored
The "stress_background_compile" variant runs on all our bots. We combine it with testing wasm code GC (which kind of fits into background compile stressing) to get more coverage for that. Both features are orthogonal, so we can test both at the same time without loosing any coverage. R=machenbach@chromium.org CC=rmcilroy@chromium.org Bug: v8:8217 Change-Id: Ib17decd4869978ff98e302694fa73d70ceec120e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588472Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61151}
-
v8-ci-autoroll-builder authored
Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/020b429..fe1dbe1 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I854de89cdf421d58e2205363ad0370ecf97b6b2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593095Reviewed-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@{#61150}
-
Dan Elphick authored
Fixes several warnings reported for internal repo by: * using vector::empty instead of vector::size() == 0 * removing redundant return; at the end of a function * making operator= return OriginalType& Bug: v8:9183 Change-Id: I8c725bd7b0bc011557fb2bb68a561ee413ab38f5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589978 Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#61149}
-
Mythri A authored
With bytecode flushing and lazy feedback allocation, we need to call %PrepareForOptimization before we call %OptimizeFunctionOnNextCall Bug: v8:8801, v8:8394 Change-Id: I1f84477a8cef27b4cff61b54daf6fe1a9e5f8e76 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591775 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61148}
-
Simon Zünd authored
R=sigurds@chromium.org Bug: v8:7793 Change-Id: Id0ba3a7b9f168e661ca786a0f1e18cd58c9210aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593073Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61147}
-
Clemens Hammacher authored
The index is an {int} initially. We then store it as {intptr_t}, and the accessor returns it as {size_t}. This CL consolidates everything to {int}, fixes naming of {HasTrapHandlerIndex} and defines the simple accessors inline. R=titzer@chromium.org Bug: v8:9183 Change-Id: I1afa792117201d4dda3fcc437a4e518489b9ff17 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590079Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61146}
-
Tamer Tas authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/4087d63..d6fe3ed Rolling v8/test/test262/harness: https://chromium.googlesource.com/external/github.com/test262-utils/test262-harness-py/+log/9bd99c6..4555345 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5b26b37..5a34ef7 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/e49aed3..020b429 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/a53e931..9997a83 Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/35f7e13..ae4b77d TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ic24825a733ac1e0f6956de7096fc23952c673ff3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591348 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#61145}
-
Frank Tang authored
Two PR of test262 tests are in https://github.com/tc39/test262/pull/2139 and https://github.com/tc39/test262/pull/2134 Bug: v8:7729 Change-Id: Ic416be0cec0fda90ee89c03ba4c6bb3192bf871d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589633Reviewed-by: Jungshik Shin <jshin@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#61144}
-
- 01 May, 2019 5 commits
-
-
Milad Farazmand authored
Port 18c29ab9 Original Commit Message: Port ed319e84 Original Commit Message: Failure addressed by not exposing the new test to the jitless environment. (jgruber@ on TBR). New enum RelocInfo::COMPRESSED_EMBEDDED_OBJECT created to support compressed pointers in generated code. Enum name EMBEDDED_OBJECT changed to FULL_EMBEDDED_OBJECT. RelocInfo::[set_]target_object() abstract away the difference between FULL_EMBEDDED_OBJECT and COMPRESSED_EMBEDDED_OBJECT. Compressed embedded objects can only be created at this time on x64 with pointer compression turned on. Arm64 constant pools don't support compressed objects at this time. R=miladfar@ca.ibm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I97ef9b7394f384c2a1b97aab9fdac0eeb80eb734 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591993Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61143}
-
Milad Farazmand authored
Port 08756826 Original Commit Message: Port 4b0f9c85 Original Commit Message: Our {Vector} template provides both {start} and {begin} methods. They return exactly the same value. Since the {begin} method is needed for iteration, and is also what standard containers provide, this CL switches all uses of the {start} method to use {begin} instead. Patchset 1 was auto-generated by using this clang AST matcher: callExpr( callee( cxxMethodDecl( hasName("start"), ofClass(hasName("v8::internal::Vector"))) ), argumentCountIs(0)) Patchset 2 was created by running clang-format. Patchset 3 then removes the now unused {Vector::start} method. R=miladfar@ca.ibm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ief052e7655ede161504cf058eddd81714e6e5929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590168 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61142}
-
Milad Farazmand authored
Port 403cac98 Original Commit Message: This is an extension of 138d2dfc. R=joey.gouly@arm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: If344e23bc4f96835125068497fabbd0d2ba0305a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591413Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61141}
-
Georg Neis authored
This is a reland of 9284ad57, after adding a missing speculation mode check in ReduceCallApiFunction. Original change's description: > [turbofan] Avoid raw InferReceiverMaps in JSCallReducer > > Instead provide an abstraction that makes it hard to forget > dealing with unreliable maps. > > This also fixes a deopt loop in Function.prototype.bind and > one in Array.prototype.reduce. > > Bug: v8:9137 > Change-Id: If6a51182c8693a62e9fb6d302cec19b4d48e25cb > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1578501 > Commit-Queue: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61106} Tbr: jarin@chromium.org Bug: v8:9137, v8:9197 Change-Id: I0db68d267055969553c0c1b85fad7b909075c062 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589976 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#61140}
-
Sathya Gunasekaran authored
Bug: v8:5367, v8:5368 Change-Id: I86f25f9f658e21a05604f3014e6ebf74f1a8a1f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590164Reviewed-by: Mathias Bynens <mathias@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61139}
-
- 30 Apr, 2019 25 commits
-
-
Johannes Henkel authored
New Rev: 8c3f1afc2dc5b8588bc2dc5f12a93255383d7236 Change-Id: I88fcc74b969d114cc6c491c9d1aa5872245f8f5c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590624Reviewed-by: Alexei Filippov <alph@chromium.org> Commit-Queue: Johannes Henkel <johannes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61138}
-
Sathya Gunasekaran authored
This reverts commit 36dd2bca. Reason for revert: msan still failing https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/26453 Original change's description: > Reland "[json] Speed up json parsing" > > This is a reland of de8aaef5 > > Original change's description: > > [json] Speed up json parsing > > > > - scan using raw data pointers + GC callback > > - scan using scanner tables > > - cap internalizing large string values > > - inline fast transitioning logic > > > > Change-Id: I545620017b38b80e4193dfaf19381411adf5ff89 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584320 > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Igor Sheludko <ishell@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#61132} > > Tbr: ulan@chromium.org > Change-Id: Iafd5e7c750a9f3eae706baf51dc4c9237c916132 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588887 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61136} TBR=ulan@chromium.org,gsathya@chromium.org,ishell@chromium.org,verwaest@chromium.org Change-Id: If0a34e017fed7688873c21f4b65f62b246820732 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590626Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61137}
-
Toon Verwaest authored
This is a reland of de8aaef5 Original change's description: > [json] Speed up json parsing > > - scan using raw data pointers + GC callback > - scan using scanner tables > - cap internalizing large string values > - inline fast transitioning logic > > Change-Id: I545620017b38b80e4193dfaf19381411adf5ff89 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584320 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61132} Tbr: ulan@chromium.org Change-Id: Iafd5e7c750a9f3eae706baf51dc4c9237c916132 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588887 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61136}
-
Ben L. Titzer authored
R=binji@chromium.org Change-Id: I936d906be90c0c6d3b84b5ad4e8cb574ab8cd970 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1585851 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#61135}
-
Sathya Gunasekaran authored
This reverts commit de8aaef5. Reason for revert: breaks MSAN https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8914730548828313776/+/steps/Check/0/logs/json/0 Original change's description: > [json] Speed up json parsing > > - scan using raw data pointers + GC callback > - scan using scanner tables > - cap internalizing large string values > - inline fast transitioning logic > > Change-Id: I545620017b38b80e4193dfaf19381411adf5ff89 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584320 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61132} TBR=ulan@chromium.org,ishell@chromium.org,verwaest@chromium.org Change-Id: I870c82f6f2a5bc3d2dfea57d5d6306cdccbbe935 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590384Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61134}
-
Clemens Hammacher authored
Wasm compilation units got smaller and smaller with recent refactorings (https://crrev.com/c/1587386, https://crrev.com/c/1587387, https://crrev.com/c/1587388, plus previous CLs). They now only store a function index and the requested compilation tier. Hence there is no reason any more to heap-allocate them. This CL changes the compilation unit queues and interfaces to store and pass compilation units by value. Methods that could return an empty {unique_ptr} before are now returning a {base::Optional}. R=mstarzinger@chromium.org Bug: v8:8343 Change-Id: I63037156b1a700095c13010450e5fedb51544401 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588456 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61133}
-
Toon Verwaest authored
- scan using raw data pointers + GC callback - scan using scanner tables - cap internalizing large string values - inline fast transitioning logic Change-Id: I545620017b38b80e4193dfaf19381411adf5ff89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584320 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61132}
-
Joey Gouly authored
This is an extension of 138d2dfc. Change-Id: Icb10aab6e6799ab4f45dcbd26fc69206dbef29bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588430 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61131}
-
Alexei Filippov authored
Remove extra allocation observer. Minor tweaks. Change-Id: Ic7e6e2f8cb39ff960960cca6cc3ece46438a4bd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588405Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#61130}
-
Andreas Haas authored
R=clemensh@chromium.org Bug: v8:7581 Change-Id: I6b20698e556ed3808f8b190f88cb700301825b54 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588432 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61129}
-
Clemens Hammacher authored
This reverts commit 7c426286. Reason for revert: Compile error on cfi: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20-%20cfi/20196 Original change's description: > [heap] Use normal marking write barrier for fixed array elements > > This simplifies the marking write barrier for elements to mark the > values instead of revisiting the array. > > Bug: chromium:918485 > > Change-Id: Id5da0d5b9ff8385a256fe14f4bf7171f9f6343e1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588459 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61125} TBR=ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org Change-Id: I8576fe00b19db906aa80ca9cb54c3b8cc95e3d97 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:918485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590076Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61128}
-
Ross McIlroy authored
BUG=v8:8801 Change-Id: I20e1b343f33293a5de3a8953650a26852126533a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588466 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Auto-Submit: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61127}
-
Mythri A authored
TraceIC always expects a valid feedback vector to check for state transitions. With lazy feedback allocations, it is possible that we don't have feedback vectors. This cl fixes TraceIC to also work when there is no feedback vector. Bug: v8:8394 Change-Id: If7e40a9f16de7415e04a812440ccc0cfcf1cbc07 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584322Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#61126}
-
Ulan Degenbaev authored
This simplifies the marking write barrier for elements to mark the values instead of revisiting the array. Bug: chromium:918485 Change-Id: Id5da0d5b9ff8385a256fe14f4bf7171f9f6343e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588459 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#61125}
-
Frederik Gossen authored
Remove unused function {UseLazyStubs}. Lazy compile stubs are now set on a per function basis. This made the function {UseLazyStubs} redundant. Change-Id: I8e715d6a9774c39841219c04c42364fc2e964569 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588473 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61124}
-
Milad Farazmand authored
Port ed319e84 Original Commit Message: Failure addressed by not exposing the new test to the jitless environment. (jgruber@ on TBR). New enum RelocInfo::COMPRESSED_EMBEDDED_OBJECT created to support compressed pointers in generated code. Enum name EMBEDDED_OBJECT changed to FULL_EMBEDDED_OBJECT. RelocInfo::[set_]target_object() abstract away the difference between FULL_EMBEDDED_OBJECT and COMPRESSED_EMBEDDED_OBJECT. Compressed embedded objects can only be created at this time on x64 with pointer compression turned on. Arm64 constant pools don't support compressed objects at this time. R=mvstanton@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I8bdb5391fd2b2565d2fcaf6c806fcdbe1a1f27b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589862Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61123}
-
Mythri A authored
With bytecode flushing and lazy feedback allocation, we need to call %PrepareForOptimization before we call %OptimizeFunctionOnNextCall Bug: v8:8801, v8:8394 Change-Id: I81918f174b2f97cbaa8b8ef2e459080c2581f535 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588415 Commit-Queue: Mythri Alle <mythria@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61122}
-
Jakob Gruber authored
Relative code targets are emitted as pc-relative jumps. The relocation delta must be subtracted (not added) from the branch offset. Before GC: |-------- branch offset --->| [host code object] [target code object] After GC: |- delta ->| |- new offset -->| [host code object] [target code object] See also the similar fix for mips in https://crrev.com/c/1581239. Bug: v8:6666 Change-Id: Ie0867d98906d4a8daa7e335884f7a4d814333872 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1581260Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61121}
-
Yu Yin authored
Fix several small compile problems which causes by https://crrev.com/c/1585737. Change-Id: I78a07d597db9d81d4a99aac08e257f380be8f7e6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1589202Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Yu Yin <xwafish@gmail.com> Cr-Commit-Position: refs/heads/master@{#61120}
-
Michael Starzinger authored
Change-Id: Ifbf1b49d7caad9b050945b07065ee5ecb9d9f9e4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588470Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61119}
-
Sigurd Schneider authored
This reverts commit 9284ad57. Reason for revert: breaks blink tests: https://ci.chromium.org/p/v8/builders/ci/V8-Blink%20Win/16839 Original change's description: > [turbofan] Avoid raw InferReceiverMaps in JSCallReducer > > Instead provide an abstraction that makes it hard to forget > dealing with unreliable maps. > > This also fixes a deopt loop in Function.prototype.bind and > one in Array.prototype.reduce. > > Bug: v8:9137 > Change-Id: If6a51182c8693a62e9fb6d302cec19b4d48e25cb > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1578501 > Commit-Queue: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61106} TBR=jarin@chromium.org,neis@chromium.org Change-Id: I97e0f47fb82eda76656905a3f7cc494babd92be6 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9137 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588433Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61118}
-
Sigurd Schneider authored
We enable this feature to collect performance data; revert at will. Bug: v8:9088 Change-Id: I57cd79707fe56ec5a2d6d5ee65b7ce24bda57773 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1585726 Auto-Submit: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61117}
-
Frederik Gossen authored
Treat lazy functions the same no matter whether they are lazy due to compilation hints or flags ({--wasm-lazy-compilation}, {--asm-wasm-lazy-compilation}). Test coverage is given by regression tests 956771 and 956771b. Bug: v8:9003 Change-Id: I123f83636f055fb142cd71f6cde88480f3c141bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1585846 Commit-Queue: Frederik Gossen <frgossen@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61116}
-
Jaroslav Sevcik authored
This just adds the same case we already added in https://chromium-review.googlesource.com/c/v8/v8/+/1478192 for conversions to tagged representation. Bug: chromium:957559 Change-Id: I62a388ba47bd72d65fa07d0141362d7f1383c96e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588428Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61115}
-
Frederik Gossen authored
Fix recognition of lazy functions when {--wasm-lazy-compilation} is used. Bug: chromium:956771 Change-Id: I3f9bb25ccf3920a6c3d266876faace8841dcdc61 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1585843Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Frederik Gossen <frgossen@google.com> Cr-Commit-Position: refs/heads/master@{#61114}
-