- 28 Jul, 2017 17 commits
-
-
Juliana Patricia Vicente Franco authored
This reverts commit e15f5544. Reason for revert: it breaks the GC stress. Original change's description: > Changing the return address on the stack. > > Rather than patching code, the deoptimizer now replaces the > return address in the frames with respective trampolines. > This change required to change the way we search for Safepoint > entries and for Exception Handlers. > It's working in architectures: x64, ia32, arm, arm64 and mips. > > Bug: V8:6563 > Change-Id: I3cbd4d192c3513f307b3a6a2ac99e60d03c753d3 > Reviewed-on: https://chromium-review.googlesource.com/586707 > Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46967} TBR=jarin@chromium.org,bmeurer@chromium.org,jupvfranco@google.com Change-Id: I430fa9123beef2e0723b38cdef9537181203f7e7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: V8:6563 Reviewed-on: https://chromium-review.googlesource.com/591371 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46969}
-
Tobias Tebbi authored
This reverts commit d230b44f. Reason for revert: compile errors on the waterfall Original change's description: > [turbofan] staging new implementation of escape analysis > > Bug: > Change-Id: Idebe4fa6d651a404a0dc1947ed4a34a8dc9707a9 > Reviewed-on: https://chromium-review.googlesource.com/565720 > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46966} TBR=mstarzinger@chromium.org,jarin@chromium.org,tebbi@chromium.org Change-Id: I73c3cb270d498aeb181e31bad04f1c73d5ca6741 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/591370Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#46968}
-
Juliana Franco authored
Rather than patching code, the deoptimizer now replaces the return address in the frames with respective trampolines. This change required to change the way we search for Safepoint entries and for Exception Handlers. It's working in architectures: x64, ia32, arm, arm64 and mips. Bug: V8:6563 Change-Id: I3cbd4d192c3513f307b3a6a2ac99e60d03c753d3 Reviewed-on: https://chromium-review.googlesource.com/586707 Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46967}
-
Tobias Tebbi authored
Bug: Change-Id: Idebe4fa6d651a404a0dc1947ed4a34a8dc9707a9 Reviewed-on: https://chromium-review.googlesource.com/565720 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46966}
-
Michael Lippautz authored
LayoutDescriptor is currently the only case where the Scavenger needs to potentially follow an updated slot to iterate an object. This scenario requires at least Acq/Rel semantics. In order to use relaxed store/load for the slots we need to allocate it pretenured. Bug: chromium:738865 Change-Id: I353fa6f252b436918b60fff54ece5ce5c7783072 Reviewed-on: https://chromium-review.googlesource.com/590429Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46965}
-
Ulan Degenbaev authored
BUG=chromium:694255 Change-Id: I6684850ae9759f719e3ed665157eaea2581a65cf Reviewed-on: https://chromium-review.googlesource.com/590008 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46964}
-
sreten.kovacevic authored
Add UseScratchRegisterScope for MIPS and use it instead of using at register directly. Original commit message: `Introduce a stripped down version of UseScratchRegisterScope for ARM and use it inside the assembler and macro-assembler. At the exception of the Call instructions, we now use this scope instead of using the ip register directly. This is inspired from how the ARM64 backend works. In general, the benefit of doing this is we can catch cases where ip is being used both by the caller and by the assembler. But more specifically, TurboFan reserves r9 as an extra scratch register because ip can already be used by the assembler. With this utility, we can isolate the cases in the code generator which need an extra register and potentially fix them, allowing us to give r9 back to the register allocator. This patch uncovered places in the assembler where we were using ip unconditionally when we could have re-used the destination register instead.` Bug: Change-Id: I1a35c1661579882801605337abfc95f75b47f052 Reviewed-on: https://chromium-review.googlesource.com/574923 Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Cr-Commit-Position: refs/heads/master@{#46963}
-
Leszek Swirski authored
Rather than storing the isolate in compiler dispatcher jobs, which gets weird for jobs that are entirely off-thread, instead pass the isolate in when stepping on the main thread. This makes it clearer which steps must be executed on the main thread, as they require the caller to explicitly give them access to the isolate. Bug: v8:6537 Change-Id: I02fff7c77fdcdbfb099a38235f94d8c1040699ac Reviewed-on: https://chromium-review.googlesource.com/589437 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46962}
-
Leszek Swirski authored
With TurboFan, there should no longer be any deopt loops (aside from bugs). So, the "too many deopts" bailout is no longer needed, at least in its current form. This fixes an issue where deopt counts are leaked between native contexts, resulting in optimization being disabled unnecessarily. Bug: v8:6402 Change-Id: Ia06374ae6b5c2d473bcdd8eef1284bf02766c2fb Reviewed-on: https://chromium-review.googlesource.com/588894 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46961}
-
Mathias Bynens authored
Intent to ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/0uSHjqvgAwQ/CqmFd6KNAwAJ BUG=v8:6172 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I50fab93516065195b4e9eea0d3be14ccf935a04f Reviewed-on: https://chromium-review.googlesource.com/589150Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#46960}
-
jgruber authored
This includes the catch and finally keywords in the respective range. For instance: // Catch range previously: |<--------->| try { /* ... */ } catch (e) { /* ... */ } // Now: |<------------------->| Bug: v8:6000 Change-Id: I1bd9f7fce8bb7de945da83ab512833841b9d956a Reviewed-on: https://chromium-review.googlesource.com/586598 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46959}
-
Jaroslav Sevcik authored
Bug: v8:6239 Change-Id: I87f72cb97616e28cb44f7160d5170ff740422419 Reviewed-on: https://chromium-review.googlesource.com/584612 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46958}
-
Benedikt Meurer authored
Bug: v8:1956 Change-Id: Ic4c67392af2337ac35f9473073dae01264c5ac00 Reviewed-on: https://chromium-review.googlesource.com/590428Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46957}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/11685b6..ece477b Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/0f1f20d..cc7953a TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: Ic687cb5f878438e46a9a64d67aaa7adc8519fb62 Reviewed-on: https://chromium-review.googlesource.com/590613Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#46956}
-
Daniel Clifford authored
Change-Id: I8ecca14e1d65aeed59cd55626e41f9863d58be50 Reviewed-on: https://chromium-review.googlesource.com/589431 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46955}
-
Jaideep Bajwa authored
Port 37680d65 Original Commit Message: Instead of having feedback vector as a subtype of FixedArray with reserved slots, make it a first-class variable-sized object with a fixed-size header. This allows us to compress counters to ints in the header, rather than forcing them to be Smis. R=leszeks@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ia835942de292c4e4b802e34672f1e8bf8a2491c7 Reviewed-on: https://chromium-review.googlesource.com/590168Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#46954}
-
pan.deng@intel.com authored
Bug: None Change-Id: I31f6c6aba48076b26971ba828411b61ed7e9bae9 Contribute by kanghua.yu@intel.com Change-Id: I31f6c6aba48076b26971ba828411b61ed7e9bae9 Reviewed-on: https://chromium-review.googlesource.com/567861Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Pan Deng <pan.deng@intel.com> Cr-Commit-Position: refs/heads/master@{#46953}
-
- 27 Jul, 2017 23 commits
-
-
Jaroslav Sevcik authored
This reverts commit 3ca64085. Reason: it does not seem to improve anything (including microbenchmarks that only do "if (m.has(x)) s += m.get(x);" in a tight loop). Bug: v8:6410 Change-Id: I025bf885f313ac5e54ca450ae9cff5b4a15b04fd Reviewed-on: https://chromium-review.googlesource.com/574020Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46952}
-
Adam Klein authored
Everything inside a class lives inside the class scope, so reparenting the class scope is the only operation that should be done to ClassLiterals during reparenting. Bug: chromium:740591 Change-Id: Ia5b96b44ff1ca6cfa274effb5a04651809bab9bd Reviewed-on: https://chromium-review.googlesource.com/588054 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46951}
-
jing.bao authored
I32x4 Mul, MinS,MaxS,MinU,MaxU, Shl,ShrS,ShrU Rename WASM_SIMD_TEST(I32x4Min) to WASM_SIMD_TEST(I32x4MinS) Bug: Change-Id: I6c721496bbf772ee734c21a3e98176699b01f890 Reviewed-on: https://chromium-review.googlesource.com/586430Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#46950}
-
Jaideep Bajwa authored
Port 79bcb454 Original Commit Message: This is a reland of a72b2f88 Original change's description: > [arm] Restrict grouping pushes before a TailCall to registers only > > We optimize parallel moves performed before a TailCall by grouping adjacent > pushes. This way, we may use a single instruction to push multiple registers at > once. However, we also have support for pushing immediates and stack slots for > which the benefit is questionnable therefore this patch removes support for > them. > > Concerning immediate pushes, it looks like a mistake since we do not have > support for this case in `AssembleMove` so this patch removes it. Furthermore, > if we add a test for this case, we see that a `push ip` instruction is > generated, effectively pushing whatever was in `ip` at the time instead of > pushing a constant. > > Concerning stack slot pushes, we generate a more or less equivalent sequence of > instructions. > > Finally, grouping floating point pushes is not used anywhere so this patch > removes support for this also. > > Bug: v8:6553 > Change-Id: I9b820d33361fc442dd813f66e1f96cda41009110 > Reviewed-on: https://chromium-review.googlesource.com/567191 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> > Cr-Commit-Position: refs/heads/master@{#46718} R=pierre.langlois@arm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I8790c7a72f92803ea8fda3c6dc7e6b013e2e09e9 Reviewed-on: https://chromium-review.googlesource.com/588471Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#46949}
-
Ross McIlroy authored
The approach to creating compiler dispatcher jobs for inner functions after they had been parsed didn't provide the startup benifits we hoped for due to the need to hold onto the whole zone memory AST while waiting for the jobs to complete. This CL removes the ability to create these compilation jobs (which was never enabled by default anyway). Going forward we will potentially use the parser task approach to parse+compile inner functions in their own job. BUG=v8:5203 Change-Id: I63134746aa23b4aa6e3bfa17c539954890fd9b0f Reviewed-on: https://chromium-review.googlesource.com/590007Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46948}
-
Alexey Kozyatinskiy authored
This CL moves us much closer to the point where we can remove debugger-script.js and usage of debugger context from inspector. There are three main parts left: - managing breakpoints, - inspecting stack and scopes (this CL), - LiveEdit. In this CL I moved all stack/scope inspection to native. As side effect running debugger and inspector tests are 10-20% faster (it's significant since not all of tests requesting break). R=yangguo@chromium.org,jgruber@chromium.org Bug: chromium:652939 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I409396a687e18e9c0554c0c9c35b6e1064627be8 Reviewed-on: https://chromium-review.googlesource.com/580645Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46947}
-
Rodolph Perfetta authored
This is preparation work to re-enable the scheduler: on arm64 some opcodes will be neutral wrt the stack (JSSP) but will modify the underlying CSP. Identify those opcode as such until JSSP is removed. Bug: Change-Id: Iae633382c5ed38b01edaec896f2ce44d76931fc8 Reviewed-on: https://chromium-review.googlesource.com/568822Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Rodolph Perfetta <rodolph.perfetta@arm.com> Cr-Commit-Position: refs/heads/master@{#46946}
-
jgruber authored
These counters handle cases in which the catch/finally block contains a jump statement. Bug: v8:6000 Change-Id: Ic83f11ee431edabe61f129c9abc3adc12a79c338 Reviewed-on: https://chromium-review.googlesource.com/586595Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46945}
-
Vyacheslav Chigrin authored
We must ensure required root objects will be filled when such objects will be deserialized. Change-Id: I25136d31cb2e0c0a69a51c5635192f17bbe2a9ba Reviewed-on: https://chromium-review.googlesource.com/579768 Commit-Queue: Vyacheslav Chigrin <vchigrin@yandex-team.ru> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#46944}
-
Mircea Trofin authored
We've been passing a context to the compiler, which turns out to be solely used to determine if we're executing in a specific cctest configuration. This change adds a configuration to the graph builder that we can use to explicitly opt out of stack checks and traps. CcTests default to opting out, except for the few that don't. Bug: Change-Id: I4724e31c2a62e9b3ab4feadb788287c374b39f53 Reviewed-on: https://chromium-review.googlesource.com/585779Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Mircea Trofin <mtrofin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46943}
-
Michael Starzinger authored
This fixes the second-order Array.prototype function {forEach} and {map} to now perform a callability check of the given callback function. For empty arrays it is observable whether such a check outside the loop has been elided or not. R=mvstanton@chromium.org TEST=mjsunit/regress/regress-crbug-747062 BUG=chromium:747062 Change-Id: I1bbe7f44b3b3d18e9b41ad0436975434adf84321 Reviewed-on: https://chromium-review.googlesource.com/588893Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#46942}
-
Mircea Trofin authored
This fixes a subtle register allocation verifier bug: depending on how moves are optimized, and when having duplicate phis, we may end up overwriting a final assessment. Bug: Change-Id: I8b7891efbdd075aae0219d60270f405b13d50f40 Reviewed-on: https://chromium-review.googlesource.com/577288Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Mircea Trofin <mtrofin@chromium.org> Cr-Commit-Position: refs/heads/master@{#46941}
-
Leszek Swirski authored
Reland of https://chromium-review.googlesource.com/c/558290/ Makes compiler dispatcher jobs an abstract interface, with unoptimized compile jobs as an implementation of this interface. Bug: v8:6537 Change-Id: Ia85781f72c7aaca497896ca4efa91ada97e43b1c Reviewed-on: https://chromium-review.googlesource.com/589154 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46940}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: I02cb7ea48a1dfaec25bf702b09242d537fe612f4 Reviewed-on: https://chromium-review.googlesource.com/589271Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46939}
-
Daniel Clifford authored
In the process, cleanup some of the maths and functionality used to setup descriptors and compute parameters. Also cleanup and correct the context passing. Change-Id: I6b6629bc81ef1c03425332dd6eadf3085efec7c9 Reviewed-on: https://chromium-review.googlesource.com/588892Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#46938}
-
Michael Starzinger authored
Note that this also renames the existing "asm_wasm" variant to use the more appropriate "stress_asm_wasm" name. R=rmcilroy@chromium.org BUG=v8:6409 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I1f9550cd03874c678f4583047a4e123a6f090250 Reviewed-on: https://chromium-review.googlesource.com/584879 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46937}
-
Ulan Degenbaev authored
BUG=chromium:739644 Change-Id: I6c7d0f48c959826dd2a8587d7a321be4387ef39f Reviewed-on: https://chromium-review.googlesource.com/586529Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46936}
-
Leszek Swirski authored
Instead of having feedback vector as a subtype of FixedArray with reserved slots, make it a first-class variable-sized object with a fixed-size header. This allows us to compress counters to ints in the header, rather than forcing them to be Smis. Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Icc5f088ffbc2e2651b845bc71ea42060639e3e48 Reviewed-on: https://chromium-review.googlesource.com/585129 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46935}
-
Jaideep Bajwa authored
Port 4e207a42 Original Commit Message: This switches the "code entry" field on JSFunction to no longer be an inner pointer into a Code object (i.e. to the start of the instruction stream), but a properly tagged pointer instead. Motivation behind this is the ability to treat this field regularly as part of escape analysis in the optimizing compiler. Also simplifies the object visitation for JSFunction objects. R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ifa5998551e041c8de647df7306dd549455936699 Reviewed-on: https://chromium-review.googlesource.com/588468Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#46934}
-
Mike Stanton authored
Test mjsunit/optimized-map walked an array through different ElementsKind transitions, but it failed to verify that the expected ElementsKind was in place. Although we have a regression test for the bug, it's a good idea to make sure the basic test covers all paths. Bug: chromium:747075 Change-Id: I1424880801857f3356bfd63839d351d6fd1521e0 Reviewed-on: https://chromium-review.googlesource.com/584837Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#46933}
-
Leszek Swirski authored
This reverts commit e4bbf92b. Reason for revert: Crashes: https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/19156 Original change's description: > [compiler-dispatcher] Make compiler jobs abstract > > Makes compiler dispatcher jobs an abstract interface, with unoptimized > compile jobs as an implementation of this interface. > > Bug: v8:6537 > Change-Id: I6569060a89c92d35e4bc7962623f77082a354934 > Reviewed-on: https://chromium-review.googlesource.com/558290 > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46931} TBR=rmcilroy@chromium.org,neis@chromium.org,leszeks@chromium.org Change-Id: I023c0455929180fdcde3caf581f483f794ca2368 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6537 Reviewed-on: https://chromium-review.googlesource.com/589153Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#46932}
-
Leszek Swirski authored
Makes compiler dispatcher jobs an abstract interface, with unoptimized compile jobs as an implementation of this interface. Bug: v8:6537 Change-Id: I6569060a89c92d35e4bc7962623f77082a354934 Reviewed-on: https://chromium-review.googlesource.com/558290Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#46931}
-
Benedikt Meurer authored
The code generated for the TestTypeOf bytecode was not ideal, mostly because of the default case that just aborted. If we do CSA_ASSERT to check the validity of the literal_flag instead anf then just use the last label as the default, the bytecode handler no longer builds a stack frame and generated code quality is now really close to ideal. The TestTypeOf bytecode handler was found to be among the three hottest bytecode handlers in the Speedometer/AngularJS benchmark. R=jarin@chromium.org Change-Id: I47705a0ca0a436d5c42899001064e77d44845a64 Reviewed-on: https://chromium-review.googlesource.com/589207Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46930}
-