- 05 Apr, 2018 11 commits
-
-
Predrag Rudic authored
Removing these tests from skip list because corresponding wasm simd opcodes lowering has been implemented. Change-Id: I77bbbee573ba65cf27dc9ee39f4d352bafb5849f Reviewed-on: https://chromium-review.googlesource.com/988032Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#52383}
-
Clemens Hammacher authored
This is a reland of 5ae8420c Original change's description: > [Liftoff] Implement float rounding > > This adds support for the four rounding operations on f32 and f64: > f32.ceil, f32.floor, f32.trunc, f32.nearest_int, f64.ceil, f64.floor, > f64.trunc, and f64.nearest_int. > > R=titzer@chromium.org > > Bug: v8:6600 > Change-Id: I16ea91e26c3233af7a33bbb794cd4182f9d7cdb0 > Reviewed-on: https://chromium-review.googlesource.com/995894 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52377} Bug: v8:6600 Change-Id: I9e69309b71041e411bda9ce1375d2451197a111b Reviewed-on: https://chromium-review.googlesource.com/997393 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52382}
-
Predrag Rudic authored
Change-Id: Id661452207cd65445e7390d86f5379b1cc4f1495 Reviewed-on: https://chromium-review.googlesource.com/988012Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#52381}
-
Predrag Rudic authored
mjsunit/harmony/bigint/typedarray test failure on mips32 big endian pointed there was a problem. Change-Id: I016a31d7758e7bd4019210e23c147dc0f8ea893f Reviewed-on: https://chromium-review.googlesource.com/995455 Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#52380}
-
Sigurd Schneider authored
This moves ArrayView.isArray and some TypedArray accessors to the JSCallReducer. Bug: v8:7340, v8:7250 Change-Id: Ia6ed9dc5eb8f0c84c286c58d757cbc149d811cf7 Reviewed-on: https://chromium-review.googlesource.com/995454Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#52379}
-
Clemens Hammacher authored
This reverts commit 5ae8420c. Reason for revert: Fails on non-sse machine: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20debug/builds/21480 Original change's description: > [Liftoff] Implement float rounding > > This adds support for the four rounding operations on f32 and f64: > f32.ceil, f32.floor, f32.trunc, f32.nearest_int, f64.ceil, f64.floor, > f64.trunc, and f64.nearest_int. > > R=titzer@chromium.org > > Bug: v8:6600 > Change-Id: I16ea91e26c3233af7a33bbb794cd4182f9d7cdb0 > Reviewed-on: https://chromium-review.googlesource.com/995894 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52377} TBR=titzer@chromium.org,clemensh@chromium.org Change-Id: Iefdeb088b84384f7bc5dc5de6917bc60e9b8292c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6600 Reviewed-on: https://chromium-review.googlesource.com/997392Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52378}
-
Clemens Hammacher authored
This adds support for the four rounding operations on f32 and f64: f32.ceil, f32.floor, f32.trunc, f32.nearest_int, f64.ceil, f64.floor, f64.trunc, and f64.nearest_int. R=titzer@chromium.org Bug: v8:6600 Change-Id: I16ea91e26c3233af7a33bbb794cd4182f9d7cdb0 Reviewed-on: https://chromium-review.googlesource.com/995894 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52377}
-
Michael Achenbach authored
NOTRY=true Bug: chromium:827067 Change-Id: I05073fd85b8b1b1545d5c2be55676aed237d1c10 Reviewed-on: https://chromium-review.googlesource.com/997292Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52376}
-
Clemens Hammacher authored
After https://crrev.com/c/995533, the tests should be stable again. R=ahaas@chromium.org Bug: v8:7621 Change-Id: Ib7a6a6503cb5398c179937a68daace09f43b9b3a Reviewed-on: https://chromium-review.googlesource.com/995443 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#52375}
-
Marja Hölttä authored
test-heap/TransitionsArraySimpleToFull was relying on an allocation happening (and GC being triggered) right at the start of TransitionsAccessor::Insert. That allocation would put the TransitionsAccessor back to the kUninitialized state. If there's no allocation at that point of the program logic, the test will fail, since the TransitionsAccessor will be go to the kFullTransitionArray state. (Needed for the in-place weak ref work, which will remove the allocation at that point.) BUG=v8:7308 Change-Id: Id3985e107d86440fe05daf5f3f29c84d028df929 Reviewed-on: https://chromium-review.googlesource.com/995476Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#52374}
-
Alexey Kozyatinskiy authored
This is a reland of 7a2c3713 Original change's description: > [debug] introduced runtime side effect check > > This CL demonstrates minimum valuable addition to existing debug evaluate > without side effects mechanism. > With this CL user can evaluate expressions like: > [a,b] // create any kind of temporary array literals > [a,b].reduce((x,y) => x + y, 0); // use reduce method > [1,2,3].fill(2); // change temporary arrays > > The core idea: any change of the object created during evaluation without > side effects is side effect free. As soon as we try to store this temporary > object to object existed before evaluation we will terminate execution. > > Implementation: > - track all objects allocated during evaluation and mark them as temporary, > - patch all bytecodes which change objects. > > A little more details (including performance analysis): [1]. > > [1] https://docs.google.com/document/d/10qqAtZADspPnpYa6SEdYRxrddfKIZJIzbLtGpsZQkRo/edit# > > Bug: v8:7588 > Change-Id: I69f7b96e1ebd7ad0022219e8213211c7be72a111 > Reviewed-on: https://chromium-review.googlesource.com/972615 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52370} Bug: v8:7588 Change-Id: Ibc92bf19155f2ddaedae39b0c576b994e84afcf8 Reviewed-on: https://chromium-review.googlesource.com/996760Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#52373}
-
- 04 Apr, 2018 29 commits
-
-
Jungshik Shin authored
This is a reland of dbdede01 after a webkit layout test (geolocation-api/timestamp.html) was fixed by https://chromium-review.googlesource.com/c/chromium/src/+/994343 . Original change's description: > Implement a new spec for timezone offset calculation > > https://github.com/tc39/ecma262/pull/778 was recently merged > to Ecma 262. > > It changes the way to convert between "local time" and UTC in such > a way that it'd work for all timezones whether or not there has > been any change in the timezone offset of the standard time. For > instance, Europe/Moscow and some parts of US state of Indiana have > changed the standard (non-DST) timezone offset a few times. The > previous spec assumes that the the standard timezone offset is > constant, but the new spec take into account the offset change > history. > > In addition, it specifies a new way to calculate the timezone > offset during a timezone transition (either in and > out of DST or timezone offset shift). > > During a negative transition (e.g. fall backward / getting > out of DST), repeated times are to be interpreted as if the > offset before the transition is in effect. > > During a positive transition (e.g. spring forward / getting > into DST), skipped times are to be treated similarly. That > is, they are to be interpreted as if the offset before the > transition is in effect. > > With icu-timezone-data, v8 is compliant to the new spec for the > past and the future as well as now whether or not the standard > timezone offset of a given timezone has changed over time > (e.g. Europe/Moscow, Pacific/Apia). With icu-timezone-data, > Australia/Lord_Howe (30 minute DST change) also works per spec. > > Without icu-timezone-data, it works only for timezones of which > the standard timezone offset is the same as the current offset > (e.g. most North American timezones other than parts of Indiana) > and of which the DST shift is an hour. For instance, it doesn't work > for Europe/Moscow in 2010 when the standard timezone offset was > +4h because the current (2018) standard timezone offset is +3h. Neither > does it for Lord Howe in Australia with the DST shift of 0.5 hr. > > This CL used to require one of the two ICU CLs below, but not > any more. > > https://chromium-review.googlesource.com/c/chromium/deps/icu/+/572652 > https://chromium-review.googlesource.com/851265 (a proposed CL to the > upstream ICU). > > Bug: v8:3547,chromium:417640,v8:5714 > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: Ib162295da5bee31b2390bd0918157014aebd3e33 > Reviewed-on: https://chromium-review.googlesource.com/572148 > Commit-Queue: Jungshik Shin <jshin@chromium.org> > Reviewed-by: Daniel Ehrenberg <littledan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52332} Bug: v8:3547, chromium:417640, v8:5714 Change-Id: I47536c111143f75e3cfeecf5d9761c43a98a10f5 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/995971 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52372}
-
Aleksey Kozyatinskiy authored
This reverts commit 7a2c3713. Reason for revert: msan is broken Original change's description: > [debug] introduced runtime side effect check > > This CL demonstrates minimum valuable addition to existing debug evaluate > without side effects mechanism. > With this CL user can evaluate expressions like: > [a,b] // create any kind of temporary array literals > [a,b].reduce((x,y) => x + y, 0); // use reduce method > [1,2,3].fill(2); // change temporary arrays > > The core idea: any change of the object created during evaluation without > side effects is side effect free. As soon as we try to store this temporary > object to object existed before evaluation we will terminate execution. > > Implementation: > - track all objects allocated during evaluation and mark them as temporary, > - patch all bytecodes which change objects. > > A little more details (including performance analysis): [1]. > > [1] https://docs.google.com/document/d/10qqAtZADspPnpYa6SEdYRxrddfKIZJIzbLtGpsZQkRo/edit# > > Bug: v8:7588 > Change-Id: I69f7b96e1ebd7ad0022219e8213211c7be72a111 > Reviewed-on: https://chromium-review.googlesource.com/972615 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52370} TBR=ulan@chromium.org,rmcilroy@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,leszeks@chromium.org Change-Id: Ied1739c6308b13a4981189e0999f5912316cf456 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7588 Reviewed-on: https://chromium-review.googlesource.com/996135Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#52371}
-
Alexey Kozyatinskiy authored
This CL demonstrates minimum valuable addition to existing debug evaluate without side effects mechanism. With this CL user can evaluate expressions like: [a,b] // create any kind of temporary array literals [a,b].reduce((x,y) => x + y, 0); // use reduce method [1,2,3].fill(2); // change temporary arrays The core idea: any change of the object created during evaluation without side effects is side effect free. As soon as we try to store this temporary object to object existed before evaluation we will terminate execution. Implementation: - track all objects allocated during evaluation and mark them as temporary, - patch all bytecodes which change objects. A little more details (including performance analysis): [1]. [1] https://docs.google.com/document/d/10qqAtZADspPnpYa6SEdYRxrddfKIZJIzbLtGpsZQkRo/edit# Bug: v8:7588 Change-Id: I69f7b96e1ebd7ad0022219e8213211c7be72a111 Reviewed-on: https://chromium-review.googlesource.com/972615 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#52370}
-
Ross McIlroy authored
With the Ignition + Turbofan pipeline there is very little overlap between the data needed for unoptimized compilation and optimized compilation. As a result, it is cleaner to split up the CompilationInfo into UnoptimizedCompilationInfo and OptimizedCompilationInfo. Doing so also necessitate splitting up CompilationJob into UnoptimizedCompilationJob and OptimizedCompilationJob - again there is not much overlap so this seems cleaner. Change-Id: I1056ad520937b7f8582e4fc3ca8f4910742de30a Reviewed-on: https://chromium-review.googlesource.com/995895 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52369}
-
Eric Holk authored
The first part of this change updates StoreMem_offset_oob_i64 to use one page of Wasm memory, rather than just a few bytes. Using less than a page was out of spec for Wasm anyway, so this is better. This required a small change in the test runner to set and clear the thread_in_wasm flag around Wasm calls. This was accomplished by a ThreadInWasmScope convenience class. The majority of the changes are because the cctest environment does not support runtime exceptions. In the code generator, where we used to throw a WasmMemOutOfBounds exception, we now need to call out to the test hook instead if runtime exceptions are not supported. This involved plumbing the runtime_exception_support flag down to the code generator. Rather than adding and shuffling around extra parameters everywhere, this CL packages the previous protected instruction list in a new WasmCompilationData object that now includes the runtime_exception_support flag as well. Bug: v8:5277 Change-Id: Ic9c9e5a53a07a7773b58c0aee7c26bbd2ddf82f3 Reviewed-on: https://chromium-review.googlesource.com/989017 Commit-Queue: Eric Holk <eholk@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52368}
-
Erik Luo authored
This exposes new flags to allow embedders to whitelist callbacks as side-effect-free during evaluation with throwOnSideEffect. Accessors and Functions/FunctionTemplates can take a new param on: - v8::Object::SetNativeDataProperty - v8::Object::SetLazyDataProperty - v8::Object::SetAccessor - v8::FunctionTemplate::New - v8::FunctionTemplate::NewWithCache - v8::Function::New While Interceptors can be created with an additional flag: PropertyHandlerFlag::kHasNoSideEffect Bug: v8:7515 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I14823316bdd6de6d362a1104b65f13504d0db056 Reviewed-on: https://chromium-review.googlesource.com/994550 Commit-Queue: Erik Luo <luoe@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#52367}
-
Ulan Degenbaev authored
The phantom handle API requires that the first pass callback does not invoke any V8 API. The current code breaks this requirement by invoking AdjustAmountOfExternalAllocatedMemory, which can cause GC. This patch splits the existing callback into two parts. The first part only resets the handle and the second part performs native delete. Bug: chromium:827806 Change-Id: I01eed09f94f5499cb9d13397066f4f908a0aa668 Reviewed-on: https://chromium-review.googlesource.com/995796 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52366}
-
Georgia Kouveli authored
In PatchTrampolineAndStubCalls, use a second iterator over the original relocation info, to avoid having to reconstruct the original target of the branch by manually applying the delta between the old and new code. This way, we do not need to make assumptions regarding how code targets are encoded. Change-Id: I551ad8a3a654ead63ea88c8ce1d8c9e1927436b0 Reviewed-on: https://chromium-review.googlesource.com/995442Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/master@{#52365}
-
Ben Titzer authored
This reverts commit 57bf0bfe. Reason for revert: <INSERT REASONING HERE> Original change's description: > [wasm] Merge the WasmContext into WasmInstanceObject > > This change makes lifetime management of WasmCode much simpler. > By using the WasmInstanceObject as the context for WASM code execution, > including the pointer to the memory base and indirect function tables, > this keeps the instance alive when WASM code is on the stack, since > the instance object is passed as a parameter and spilled onto the stack. > This is in preparation of sharing the code between instances and > isolates. > > Bug: v8:7424 > > Change-Id: Ic2e4b7bcc2feb20001d0553a615a8a9dff36317e > Reviewed-on: https://chromium-review.googlesource.com/958520 > Commit-Queue: Ben Titzer <titzer@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52361} TBR=mstarzinger@chromium.org,titzer@chromium.org,ahaas@chromium.org,clemensh@chromium.org Change-Id: I653e27b46dbc43ad773eda4292d521a508f42d79 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7424 Reviewed-on: https://chromium-review.googlesource.com/995418Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52364}
-
Igor Sheludko authored
Bug: v8:5988 Change-Id: I6f62199f062ea32e66903f5385fc109e47fed374 Reviewed-on: https://chromium-review.googlesource.com/970822 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#52363}
-
Sathya Gunasekaran authored
This reverts commit 99c0410b. TBR=bmeurer@chromium.org Bug: v8:7611 Change-Id: I3f75631e1d15173d2679a3bd37ef05e56e4a28e2 Reviewed-on: https://chromium-review.googlesource.com/995581Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#52362}
-
Ben L. Titzer authored
This change makes lifetime management of WasmCode much simpler. By using the WasmInstanceObject as the context for WASM code execution, including the pointer to the memory base and indirect function tables, this keeps the instance alive when WASM code is on the stack, since the instance object is passed as a parameter and spilled onto the stack. This is in preparation of sharing the code between instances and isolates. Bug: v8:7424 Change-Id: Ic2e4b7bcc2feb20001d0553a615a8a9dff36317e Reviewed-on: https://chromium-review.googlesource.com/958520 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52361}
-
Clemens Hammacher authored
R=ahaas@chromium.org Bug: v8:6600 Change-Id: I0f82f60dae124167d5dfb05b3ecb6f8b0be7c2f4 Reviewed-on: https://chromium-review.googlesource.com/995458Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52360}
-
Igor Sheludko authored
Bug: chromium:798372 Change-Id: I76d7317ef66dd5005250a10961d6732c39d4d108 Reviewed-on: https://chromium-review.googlesource.com/995445Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#52359}
-
Clemens Hammacher authored
We sometimes allow allocation to fail and return a null Handle in that case (e.g. for grow_memory). This refactors this code to return a MaybeHandle instead, to document that allocation might fail and to force the caller to handle this. R=mstarzinger@chromium.org Change-Id: Ia3ba65f840cfb1cf93e8dbd508a17375c19bae58 Reviewed-on: https://chromium-review.googlesource.com/995438 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52358}
-
Clemens Hammacher authored
The first GC will collect dead JSArrayBuffers, but the release of the underlying JSArrayBuffer::Allocations might be delayed. Hence, a second GC might be needed. R=ulan@chromium.org Bug: v8:7621 Change-Id: Iee714f05cb939bb084d064be6d31dfbab32ff4ba Reviewed-on: https://chromium-review.googlesource.com/995533 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#52357}
-
Sigurd Schneider authored
Bug: v8:7340, v8:7250 Change-Id: I57f78fa5ad261f041b66986918c427821a57a6e1 Reviewed-on: https://chromium-review.googlesource.com/995472Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#52356}
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I90992ca98765c22f918a612671b718bdd4b9a764 Reviewed-on: https://chromium-review.googlesource.com/995535 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52355}
-
Dan Elphick authored
This is a reland of 12420537 Original change's description: > [heap] fix Sweeper::kNumberOfSweepingSpaces > > When indexing into vectors of sweeping spaces, convert the > AllocationSpace to an index (by subtracting FIRST_GROWABLE_PAGED_SPACE) > to avoid wasted space at the start. > > Change-Id: Ia23fe6dae42d5accea9f7fe7ec5c3b303ef857b4 > Reviewed-on: https://chromium-review.googlesource.com/978242 > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52320} Change-Id: Ic8ea2d58b9d4cfe97eb8efec93df101b734d5ddd Reviewed-on: https://chromium-review.googlesource.com/994214Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#52354}
-
Ivo Markovic authored
Code targets are not PC relative encoded on MIPS and are removed from RelocInfo::kApplyMask. Change-Id: Ie893626f38bfb7457693df34a22f5cb6bca2cd4c Reviewed-on: https://chromium-review.googlesource.com/995435Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#52353}
-
jgruber authored
Before reporting coverage data, we attempt to reduce clutter by merging nested and consecutive ranges. Nested ranges are merged, if the child range has the same execution count as the parent range. Sibling ranges are merged, if one sibling begins where the other ends and execution counts are identical. This allowed an invalid transformation in which a range with an execution count of 1 would be merged into the parent change, but the sibling range with identical start and end points and a count of 0 would remain, effectively deleting the covered range. For example: {start: 0, end: 10, count: 1}, {start: 5, end: 8, count: 1}, // It's invalid to remove this. {start: 5, end: 8, count: 0} The fix is to separate the parent and sibling merge passes, and removing duplicate ranges in-between. Bug: chromium:827530 Change-Id: Ic35eae1d4a106746570ce9cb412ed6710ef6da53 Reviewed-on: https://chromium-review.googlesource.com/992114Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52352}
-
Clemens Hammacher authored
This adds support for i64 addition and subtraction. R=titzer@chromium.org Bug: v8:6600 Change-Id: If7ed762091b0ebd688eb2a8cac84e59b91c8a322 Reviewed-on: https://chromium-review.googlesource.com/992316Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52351}
-
Sigurd Schneider authored
Bug: v8:7584 Change-Id: I03ee3332960bf733a79f95a6cbe8563212cbaa1d Reviewed-on: https://chromium-review.googlesource.com/995453Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#52350}
-
Igor Sheludko authored
Drive-by cleanup: remove megamorphic stub cache lookup support from generic property store code. This lookup is no longer necessary because 1) fast stores to existing properties get all the information from the map, 2) transitioning store targets are taken directly from the transition array, so in both cases there's no point in doing a store handler lookup. Bug: v8:5988 Change-Id: I95c0a08e7d1a76bb0f4475a9bd685e4e11e16a48 Reviewed-on: https://chromium-review.googlesource.com/983921 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#52349}
-
Michael Starzinger authored
This removes the redundant weak link to the {WasmCompiledModule} from the {CompilationState} class and instead replaces it with a normal C++ pointer back to the associated {NativeModule}. This reduces the number of weak links back into the garbage collected heap, such links are costly for the GC, hard to understand and maintain, and should be kept at a minimum. Simply explicitly encoding the one-to-one relationship between the {NativeModule} and the {CompilationState} is easier. R=clemensh@chromium.org Change-Id: Ib7f79bc3a89fe463f548615a918f3fa4c9feea59 Reviewed-on: https://chromium-review.googlesource.com/995274Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52348}
-
Sergiy Byelozyorov authored
This reverts commit 2ade52e9. Reason for revert: still breaks internal bots, e.g. https://uberchromegw.corp.google.com/i/internal.client.v8/builders/v8_nexus7_perf Original change's description: > Reland "[test] Add JSTest benchmark for object literal spread" > > This reverts commit cd1dd34f. > > Patchset 1 is the original CL that was reverted. Patchset 2 has the > fix. > > TBR=bmeurer@chromium.org > > Bug: v8:7611 > Change-Id: I15291175ab894ef667c001e1b21b8b220e1f9b48 > Reviewed-on: https://chromium-review.googlesource.com/993995 > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52337} TBR=gsathya@chromium.org,bmeurer@chromium.org Change-Id: Ie7da3a02df16df716293d0104f1f7d16208f1baf No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7611 Reviewed-on: https://chromium-review.googlesource.com/995294Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#52347}
-
Michael Achenbach authored
This reverts commit 63ecddc8. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20internal%20snapshot/builds/14773 Original change's description: > [runtime] Remove the construct_stub field of the SFI > > Don't dispatch based on the construct_stub field anymore. Rather than > read it out and jump to the construct stub, we can switch on the > builtin_id. > > Builtins will always have builtin_id as a Smi, so this signals we need > to jump to JSBuiltinsConstructStub. The only exception is for uncompiled > functions, which will have kCompileLazy as the builtin_id, but need to > jump to the generic stub instead. > > API function calls will have a FunctionTemplateInfo in the SFI > function_data field, and need to go to the builtins stub as well. > > The final case is everything else, which should go to the generic stub. > > Bug: v8:7503 > Change-Id: I14790a5f9784dc0d940bf10a05f5310026e1d482 > Reviewed-on: https://chromium-review.googlesource.com/980941 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52345} TBR=petermarshall@chromium.org,leszeks@chromium.org,bmeurer@chromium.org Change-Id: I2031913ab5a12018ad932f920792aa1f6faa5e22 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7503 Reviewed-on: https://chromium-review.googlesource.com/995293Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52346}
-
Peter Marshall authored
Don't dispatch based on the construct_stub field anymore. Rather than read it out and jump to the construct stub, we can switch on the builtin_id. Builtins will always have builtin_id as a Smi, so this signals we need to jump to JSBuiltinsConstructStub. The only exception is for uncompiled functions, which will have kCompileLazy as the builtin_id, but need to jump to the generic stub instead. API function calls will have a FunctionTemplateInfo in the SFI function_data field, and need to go to the builtins stub as well. The final case is everything else, which should go to the generic stub. Bug: v8:7503 Change-Id: I14790a5f9784dc0d940bf10a05f5310026e1d482 Reviewed-on: https://chromium-review.googlesource.com/980941Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#52345}
-
Michael Achenbach authored
This reverts commit 9a7e9cf2. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20cfi/builds/14341 Original change's description: > Enable cfi-icall on the v8 CFI bots > > BUG=v8:7164 > > Change-Id: I7522ba6ac2bde89c84bcd49bc116a432091a2938 > Reviewed-on: https://chromium-review.googlesource.com/990802 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52343} TBR=machenbach@chromium.org,clemensh@chromium.org,vtsyrklevich@chromium.org Change-Id: Id979a20d28445e05c6c2266614bb6ea1d6560ef6 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7164 Reviewed-on: https://chromium-review.googlesource.com/995292Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52344}
-