- 06 Jul, 2017 4 commits
-
-
Pierre Langlois authored
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: v8:6553 Change-Id: Ib7134e3ed64dd1f90baf209ae831ed8f644cac78 Reviewed-on: https://chromium-review.googlesource.com/544956 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46425}
-
Michael Achenbach authored
NOTRY=true TBR=hablich@chromium.org Bug: v8:6574 Change-Id: Ibe9d023a11a062f167a696e752478f3355f32bb4 Reviewed-on: https://chromium-review.googlesource.com/561001Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46424}
-
Tom Anderson authored
R=machenback@chromium.org Bug: v8:6565 Change-Id: I57bf7deb926e2b2b0623d8f2a65693df4639aaa2 Reviewed-on: https://chromium-review.googlesource.com/560092Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#46423}
-
Benedikt Meurer authored
R=jgruber@chromium.org Bug: v8:5717 Change-Id: I715aa8e807d479056044f364410bbce62d23c593 Reviewed-on: https://chromium-review.googlesource.com/560996Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46422}
-
- 05 Jul, 2017 22 commits
-
-
Sathya Gunasekaran authored
Bug: v8:5785 Change-Id: I3d9b530ce3acd5d4685d5565475ea0bb96c822f6 Reviewed-on: https://chromium-review.googlesource.com/559731 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#46421}
-
Miran.Karic authored
The CL replaces several helper functions for memory load/store using base register and offset with one helper function that contains several optimizations. BUG= Change-Id: I187e7e882131552abd9a0b3a0070d78adefd25b6 Reviewed-on: https://chromium-review.googlesource.com/552119 Commit-Queue: Miran Karić <Miran.Karic@imgtec.com> Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Cr-Commit-Position: refs/heads/master@{#46420}
-
Caitlin Potter authored
Remove catch prediction tracking from AstNumbering, and replace it with a similar mechanism in the BytecodeGenerator visitor. BUG=v8:4483, v8:5855 Change-Id: I6351ba311716102fa55cd9ef29b9955ab4b11027 Reviewed-on: https://chromium-review.googlesource.com/559006Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#46419}
-
Andreas Haas authored
On x86, signalling NaNs get converted to quiet NaNs when they get push on the stack and popped again. This happens in the code generation for arm, specifically for the vmov instruction with the immediate parameter. This CL replaces the vmov function in assembler-arm to take the immediate as a uint64_t instead of a double, to guarantee that the bit pattern does not change even if the parameter is a signalling NaN. BUG=v8:6564 Change-Id: I062559f9a7ba8b0f560628e5c39621ca578c3e7d Reviewed-on: https://chromium-review.googlesource.com/558964 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#46418}
-
Mike Stanton authored
If the input array is small, then the cost of a trip to the runtime to transition the ElementsKind is too expensive. Bug: Change-Id: Ib04f8567674a6f1f66f4c7263eba5fb4c58987aa Reviewed-on: https://chromium-review.googlesource.com/544866 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#46417}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: I310684886b6507616733e61338b605f24c6adfe1 Reviewed-on: https://chromium-review.googlesource.com/558298Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46416}
-
Maya Lekova authored
Bug: Change-Id: I95285260b0848c4c876498bfef0b13ffbe6855ad Reviewed-on: https://chromium-review.googlesource.com/558297Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Maya Lekova <mslekova@google.com> Cr-Commit-Position: refs/heads/master@{#46415}
-
Michael Lippautz authored
Inline pointers visitation instead of handling recursive marking. Bug: chromium:738831 Change-Id: I0840258988c3097119f6299f0e1b6759b55fbd27 Reviewed-on: https://chromium-review.googlesource.com/559346 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46414}
-
Michael Achenbach authored
The bots were deleted on the infra side. NOTRY=true TBR=jkummerow@chromium.org Bug: v8:6550 Change-Id: I2c054c04535d218a540e5d22ca2770627cafded4 Reviewed-on: https://chromium-review.googlesource.com/559340 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#46413}
-
Benedikt Meurer authored
Change-Id: I5fc90147ee7526b8b66d04f38e5e225741cf4642 Bug: v8:6571 Reviewed-on: https://chromium-review.googlesource.com/559342Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#46412}
-
Leszek Swirski authored
Instead of counting profiler ticks on the shared function info (which is shared between native contexts), count them on the feedback vector (which is not). This allows us to continue pushing optimization decisions off the SFI, onto the feedback vector. Note that a side-effect of this is that ICs don't have to walk the stack to reset profiler ticks, as they can access the feedback vector directly from their feedback nexus. Change-Id: I232ae9e759fca75cd89d393148a4ff42caa2646f Reviewed-on: https://chromium-review.googlesource.com/544888Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#46411}
-
Dusan Simicic authored
Add support for pcnt.df, nlzc.df, nloc.df MSA instructions in mips32 and mips64 simulator. Bug: Change-Id: I15c2e832c317ff81ce3615b7bd269e039c978e93 Reviewed-on: https://chromium-review.googlesource.com/538654 Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Cr-Commit-Position: refs/heads/master@{#46410}
-
Juliana Franco authored
Change-Id: Iec7f2868e1f0d20ad9046a5bda4bc1c87f038f23 Reviewed-on: https://chromium-review.googlesource.com/558292Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> Cr-Commit-Position: refs/heads/master@{#46409}
-
machenbach authored
Revert of Set the current context to the function's context when entering to LAP. (patchset #14 id:540001 of https://codereview.chromium.org/2770003002/ ) Reason for revert: Speculative: Seems to break webkit_unit_tests: https://build.chromium.org/p/tryserver.v8/builders/v8_linux_blink_rel/builds/23247 https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Mac/builds/11038 Original issue's description: > Set the current context to the function's context when entering to LAP. > > In case of LAP(lazy accessor pair), the function's creation context > must be equal to the accessor holder's creation context, so this CL > changes the current context to the accessor holder's creation context. > > BUG=v8:6156 > > Review-Url: https://codereview.chromium.org/2770003002 > Cr-Commit-Position: refs/heads/master@{#46406} > Committed: https://chromium.googlesource.com/v8/v8/+/18e73287dc65452bc2f952fc005b2251fc32c15a TBR=jochen@chromium.org,verwaest@chromium.org,mstarzinger@chromium.org,tebbi@google.com,yukishiino@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:6156 Review-Url: https://codereview.chromium.org/2973593002 Cr-Commit-Position: refs/heads/master@{#46408}
-
Michael Lippautz authored
To be used with tuples of heap objects and sizes. Bug: chromium:738865 Change-Id: I29d9cf98bb2097cc8e1616aaf19a251507ffbd9e Reviewed-on: https://chromium-review.googlesource.com/559050Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46407}
-
yukishiino authored
In case of LAP(lazy accessor pair), the function's creation context must be equal to the accessor holder's creation context, so this CL changes the current context to the accessor holder's creation context. BUG=v8:6156 Review-Url: https://codereview.chromium.org/2770003002 Cr-Commit-Position: refs/heads/master@{#46406}
-
Georg Neis authored
R=jarin@chromium.org,bmeurer@chromium.org Bug: Change-Id: Id22b6890723d0366e6f3db0bdbad40660f524b59 Reviewed-on: https://chromium-review.googlesource.com/558070Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46405}
-
Georg Neis authored
R=jarin@chromium.org,bmeurer@chromium.org Bug: Change-Id: I6f4e56f37987d2ae67eed91401b10dcc26397970 Reviewed-on: https://chromium-review.googlesource.com/558086Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46404}
-
Igor Sheludko authored
This is a preliminary step before we stop swapping maps in the bootstrapper (strict/sloppy map with writable prototype <-> readonly prototype). Bug: v8:6459 Change-Id: I120550c10e98a234e283d79a8d408096601c92af Reviewed-on: https://chromium-review.googlesource.com/558879Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#46403}
-
Maya Lekova authored
Bug: Change-Id: Iea628676cd81f6917e6118657cfd60247a666b5a Reviewed-on: https://chromium-review.googlesource.com/559329Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Maya Lekova <mslekova@google.com> Cr-Commit-Position: refs/heads/master@{#46402}
-
jgruber authored
Regexp code flushing support has been unintentionally disabled for quite a while without any signals on our benchmarks. This CL completely removes support. BUG=v8:6569 Change-Id: Ic018a115c38387ff5610b34d3c09cb360e30ad3f Reviewed-on: https://chromium-review.googlesource.com/559331Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46401}
-
jing.bao authored
Add Pxor, Pshuflw, Pshufb, Pextrb, Pextrw macros Reconstruct SIMD opcodes to macros BUG= Review-Url: https://codereview.chromium.org/2937653002 Cr-Commit-Position: refs/heads/master@{#46400}
-
- 04 Jul, 2017 6 commits
-
-
Michael Lippautz authored
Did only work with full MCs. Since the majority of GCs is now incremental and will be concurrent in future this becomes obsolete. Bug: v8:6569 Change-Id: I28280a71dd4e779742dd4d1b3dd01087cd4f8fe0 Reviewed-on: https://chromium-review.googlesource.com/558983Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46399}
-
Maya Lekova authored
Bug: Change-Id: I972f075e779b4bc27e3e7aed2f8f15f1af26dddd Reviewed-on: https://chromium-review.googlesource.com/558998Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Maya Lekova <mslekova@google.com> Cr-Commit-Position: refs/heads/master@{#46398}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: I67b65f3006d6fe7e88854806f364d9863076b49b Reviewed-on: https://chromium-review.googlesource.com/558969 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46397}
-
Leszek Swirski authored
Instead of having the "next step" state machine logic in the compiler dispatcher, move it to the compiler dispatcher job. This is a prerequisite to having more generic jobs with slightly different state sets, such as an optimizing compile job. Bug: v8:6537 Change-Id: Ib7319222f26dbc0e2afc95573b06d813825afde3 Reviewed-on: https://chromium-review.googlesource.com/554751 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#46396}
-
Mike Stanton authored
Every, Some, Reduce, ReduceRight. Added a test that should improve when TurboFan inlines these builtins. Updated Map and Filter tests to include a TurboFan inline test. Bug: v8:2229 Change-Id: Ie84d414fdcccea23c734caca55a3344f9442547f Reviewed-on: https://chromium-review.googlesource.com/558935Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#46395}
-
jarin authored
Review-Url: https://codereview.chromium.org/2964633002 Cr-Commit-Position: refs/heads/master@{#46394}
-
- 03 Jul, 2017 8 commits
-
-
bgirard authored
v8.cpu_profiler has a long and variable warm up period. If you look in tracing that time shows up under V8.Execute which is very misleading. By adding a tracing category for the time spent in CpuProfiler::StartProfiling the warm up time can be easily identified or even filtered out. With this tracing event the block in StartProfiling correctly described the time spent prepare v8.cpu_profiler out from V8.Execute Test by collecting a trace with V8.Execute and look at when a trace starts generating v8 samples. BUG=chromium:733853 Review-Url: https://codereview.chromium.org/2950543002 Cr-Commit-Position: refs/heads/master@{#46393}
-
Camillo Bruni authored
Change-Id: I703c90cfbb91f4afc035fb32a44f33af9fe736f3 Reviewed-on: https://chromium-review.googlesource.com/548459 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#46392}
-
Michael Lippautz authored
Bug: chromium:738368 Change-Id: I749517391f9d5dd0827f3d37f975f6c61542d1ff Reviewed-on: https://chromium-review.googlesource.com/558914 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46391}
-
Michael Achenbach authored
This reverts commit 8840d622. Reason for revert: This requires the infra-side to be adapted to look for open rolls. There's no such feature in the gerrit recipe_module or git-cl tooling yet. Original change's description: > [release] Make gerrit the default for all release tools > > This switches also the V8->Chromium rolls to Gerrit. > > NOTRY=true > TBR=hablich@chromium.org > > Bug: chromium:685318 > Change-Id: Idc168f790541f09bd2f2d7c2f72806ac9e966843 > Reviewed-on: https://chromium-review.googlesource.com/558913 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46388} TBR=machenbach@chromium.org,hablich@chromium.org,tandrii@chromium.org Change-Id: I597538b6165b9952b5df9cde72466b95739cf56b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:685318 Reviewed-on: https://chromium-review.googlesource.com/558225Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46390}
-
Michael Achenbach authored
The release tools used to reload CL descriptions from rietveld to consider late edits. This makes no sense anymore with gerrit, so we drop the feature. NOTRY=true TBR=hablich@chromium.org Bug: chromium:685318 Change-Id: I08231795ba3b25c0939aa2b4428973086548484d Reviewed-on: https://chromium-review.googlesource.com/558915Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46389}
-
Michael Achenbach authored
This switches also the V8->Chromium rolls to Gerrit. NOTRY=true TBR=hablich@chromium.org Bug: chromium:685318 Change-Id: Idc168f790541f09bd2f2d7c2f72806ac9e966843 Reviewed-on: https://chromium-review.googlesource.com/558913Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#46388}
-
Ilija Pavlovic authored
On Loongson 3A, MADD/MSUB instructions are actually fused MADD/MSUB and they can cause failure in some of the tests. Since this optimization is rarely used, and not used at all on MIPS64R6, MADD/MSUB instructions are removed from the source base. TEST= BUG= Change-Id: Ifbb5508a62731bb061f332864ffd1e210e97f963 Reviewed-on: https://chromium-review.googlesource.com/558066Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Cr-Commit-Position: refs/heads/master@{#46387}
-
Michael Lippautz authored
Bug: chromium:738368 Change-Id: Iebbfc258be7f1997dc441ccdf12c38635901f732 Reviewed-on: https://chromium-review.googlesource.com/558911Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46386}
-