- 31 Oct, 2019 8 commits
-
-
Andreas Haas authored
Update the WebAssembly spec tests. Additional changes: * Enable tests that pass now: some proposals had out-dated tests. With the proposals being rebased, these tests pass now. * Run the multi-value proposal tests with --no-experimental-wasm-bulk-memory. We already enabled bulk-memory by default, but it includes some breaking changes. R=thibaudm@chromium.org Bug: v8:9673 Change-Id: Ic6de44fc01cee640c741d825dc70b1bdfb1297f4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890096Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#64672}
-
Mythri A authored
With lazy feedback allocation we always miss to runtime for LdaGlobal till the feedback vector is allocated. This cl adds and uses a new builtin to handle some of the common cases in builtins instead of missing to runtime. Bug: chromium:988402 Change-Id: I5fe0a157234007d8771501df9f2a5ea3a9116862 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1841354 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#64671}
-
Mythri A authored
JSProxy::HasProperty returns Nothing<bool>() when there is an exception when executing has trap handler. We should not treat these cases similar to not found cases. Bug: chromium:1018871 Change-Id: I5510e707c96576d2dca4c8402e21a89065cc9b90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1886919Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#64670}
-
Michael Achenbach authored
Bug: chromium:994387 Change-Id: I7b37a416ce6cc79903fe04923e86af1d0065ac37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890090Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64669}
-
Clemens Backes authored
Merge CASE_I32_SIGN_EXTENSION with the identical CASE_I32_UNOP, and rename CASE_I64_SIGN_EXTENSION to CASE_I64_UNOP. This prepares the addition of more opcodes. R=ahaas@chromium.org Bug: v8:9919 Change-Id: Ie1611e2b937dffab221bfd9911e8b7f2350b9d19 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889882Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64668}
-
Jakob Gruber authored
The condition to detect an inline backing store was wrong and we would try to access the heap-allocated store even for inline stores. Drive-by: Use kBitsPerSystemPointer and the new kBitsPerSystemPointerLog2 constants. Change-Id: I19d0245ae82642a788c967534ab2a84464d56a67 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890093 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64667}
-
Tobias Tebbi authored
Add information to CallInterfaceDescriptor if additional implicit arguments can be passed on the stack, that is, if it is a varargs calling convention. With this information, we can have a proper DCHECK in CSA to avoid passing the wrong number of arguments to builtins that don't support it. Previously, this lead to difficult to investigate crashes with misaligned stacks. Drive-by cleanup: Reduce duplication between DEFINE_PARAMETERS_... macros. Change-Id: I449af6713a3cdd72e098d3481dfee62e01343f14 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888932Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64666}
-
Milad Farazmand authored
Port 46648402 Original Commit Message: CallDebugOnFunctionCall was always using Registers and not Immediates. Then ParameterCount is not really needed. Since updating that, we could update other functions, e.g InvokeFunction, to only use registers too. Also removed now irrelevant variables, e.g definitely_mismatches. R=solanes@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ie0348998503bf4f416440f056e4296d22d064d4d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1892171Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64665}
-
- 30 Oct, 2019 32 commits
-
-
Bill Budge authored
This reverts commit e2376aed. Reason for revert: Causes failures on multiple bots of regress-678917 https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20-%20cfi/22459 Original change's description: > [heap] Promote young objects by default in MC > > Start experiment with promoting all young live objects during > mark-compact. This CL sets always_promote_young_mc to true by default. > > Change-Id: I306527ad2a361fc3e0edcf684c5ccec2b1d6e491 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1879938 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64630} TBR=ulan@chromium.org,dinfuehr@chromium.org Change-Id: I439dfee84a6795caa47f4c9a869ccef44a46a73f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1891512Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#64664}
-
Frank Tang authored
Remove unicode keyword/value "ca" and "nu" from the resolvedOptions().locale, if it does not match the option "calendar" / "numberingSystem". Bug: v8:9887 Change-Id: Idabc7e266e8e5f847f919324a93e39df4df440c8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1877708Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64663}
-
Milad Farazmand authored
This reverts commit 2da05dfc. Reason for revert: Will need to commit some of the changes as a port of 46648402 Original change's description: > PPC/s390: [codegen] Removed ParameterCount class > > Port 1e696896 > > Original Commit Message: > > It was used only with Register inputs, so we can replace its uses with > the Registers themselves. > > R=solanes@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com > BUG= > LOG=N > > Change-Id: I95c0e6fc19ea5f9579d022756a4693ea0140d2f7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890543 > Reviewed-by: Junliang Yan <jyan@ca.ibm.com> > Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> > Cr-Commit-Position: refs/heads/master@{#64661} TBR=michael_dawson@ca.ibm.com,jyan@ca.ibm.com,joransiu@ca.ibm.com,miladfar@ca.ibm.com,solanes@chromium.org Change-Id: I10f0a7f3c81f7c5c396df1e26ead50c5f8755231 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1891073Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64662}
-
Milad Farazmand authored
Port 1e696896 Original Commit Message: It was used only with Register inputs, so we can replace its uses with the Registers themselves. R=solanes@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I95c0e6fc19ea5f9579d022756a4693ea0140d2f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890543Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64661}
-
Deepti Gandluri authored
Bug: v8:9810 Change-Id: I585d35d01acf77d15ccb0e7334786d15ba07fb41 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876634 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64660}
-
Santiago Aboy Solanes authored
Bug: v8:9810 Change-Id: I2893c3066616b8fb5b3bebde4797adb0dac109c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889878 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#64659}
-
Ng Zhi An authored
These are SSE instructions that deal with scalar single precision values, and look like the packed single precision variant of the instructions, but with a prefix. E.g. sqrtps is NP 0F 51, sqrtss is F3 0F 51. Bug: v8:9810 Change-Id: I417ea6d4d85d8618ad6602a1b32d4428db0d66d2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1874509Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64658}
-
Michael Starzinger authored
R=clemensb@chromium.org TEST=mjsunit/wasm/streaming-error-position Change-Id: Ia1e95f5c5b0f90a98848951333c4c4aa4ebafefe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889880 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64657}
-
Joshua Litt authored
Bug: v8:9838 Change-Id: Ibdb985243fe121057f982712b2909f45e0ae175c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869490 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#64656}
-
Georg Neis authored
... since we may be in the background. Print the HeapObjectRef instead, which will read the heap when it's allowed to do so. Bug: v8:9541 Change-Id: I201c6dcd83e1b050393d633e4d59aec636772da6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889876 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#64655}
-
Michael Starzinger authored
This fixes the streaming decoder to report the correct error position for repeating code sections (i.e. only one code section per module). R=clemensb@chromium.org Change-Id: Ie02d704d74b4e051fa9b00288dd6d1e46e2418a5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890094 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64654}
-
Clemens Backes authored
Each run of {OnFinishedUnits} can only trigger baseline completion or top tier completion at most once, so we can pull the call out of the loop. R=ahaas@chromium.org Change-Id: I7eaf42addbbaa9600cb9bf95dce76399be683971 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889879Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64653}
-
Milad Farazmand authored
Port b875f466 Original Commit Message: This is a reland of 4a16305b The original CL adjust only one part of the stack check, namely the comparison of the stack pointer against the stack limit in generated code. There is a second part: Runtime::kStackGuard repeats this check to distinguish between a stack overflow and an interrupt request. This second part in runtime must apply the offset just like in generated code. It is implemented in this reland by the StackCheckOffset operator and a new StackGuardWithGap runtime function. Original change's description: > [compiler] Optionally apply an offset to stack checks > > The motivation behind this change is that the frame size of an optimized > function and its unoptimized version may differ, and deoptimization > may thus trigger a stack overflow. The solution implemented in this CL > is to optionally apply an offset to the stack check s.t. the check > becomes 'sp - offset > limit'. The offset is applied to stack checks at > function-entry, and is set to the difference between the optimized and > unoptimized frame size. > > A caveat: OSR may not be fully handled by this fix since we've already > passed the function-entry stack check. A possible solution would be to > *not* skip creation of function-entry stack checks for inlinees. > > This CL: 1. annotates stack check nodes with the stack check kind, where > kind is one of {function-entry,iteration-body,unknown}. 2. potentially > allocates a temporary register to store the result of the 'sp - offset' > in instruction selection (and switches input registers to 'unique' > mode). 3. Applies the offset in code generation. > > Drive-by: Add src/compiler/globals.h for compiler-specific globals. > > Bug: v8:9534,chromium:1000887 > Change-Id: I257191c4a4978ccb60cfa5805ef421f30f0e9826 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1762521 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63701} R=jgruber@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I37bf1d9157a96a5d3538108703f2d7469a11bffe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890535Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64652}
-
Sigurd Schneider authored
This CL removes a GC invocation which might not be needed anymore. This CL picks up on a previous attempt to remove this invocation: crrev.com/c/928241 Bug: chromium:1005906, chromium:1019613 Change-Id: I487b5bfd51532fe60cd71444b53874f20eecdf16 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1883566Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#64651}
-
Santiago Aboy Solanes authored
In the case where we fail on the 'before register allocation' phase, we will have the instructions to print, but turbolizer will fail to show them because it will look for the non-existent offsets. Bug: v8:7327 Change-Id: I52e520dcb662fe9931f1bb29cd2c16cd62913158 Notry: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889883Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64650}
-
Nico Hartmann authored
Bug: v8:9192 Change-Id: Idd89fd36d4b334b46505bf0b35b7ce2472e6bf08 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890098 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#64649}
-
Santiago Aboy Solanes authored
Test for the HeapConstant reduction. Move heap_constants to a scope where it can be reused by other tests. Bug: v8:7703 Change-Id: I1da1dd7ad65670980867aa5319b96cc9c701c5a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876064 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64648}
-
Ingvar Stepanyan authored
Some tools that transform Wasm today, already support encoding the transforms and correctly updating locations in source maps, but not yet in DWARF (although this is being worked on). Until they catch up, it's best to consistently prefer source maps over DWARF when both are present, and not just rely on order of sections as accidentally done in the previous CL that introduced DWARF info. Ref: crrev.com/c/v8/v8/+/1834341 Bug: chromium:1016772 Change-Id: I769311e2096ae0e4ca304bef0a0453c7e0776aae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888930 Commit-Queue: Ingvar Stepanyan <rreverser@google.com> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64647}
-
Clemens Backes authored
The same functionality can be achieved by just setting a breakpoint in that function. R=ahaas@chromium.org Bug: v8:9810 Change-Id: Ieb5e99b5c2f0b492e32e75cae0c0b9292accd932 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888072Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64646}
-
Liviu Rau authored
This reverts commit b3c6e1ac. Reason for revert: The build time incresed significantly. We want to investigate if we can reduce it by removing the 'packaging' step. Original change's description: > Activate is_offcial_build option for perf builders > > Bug: v8:9898 > Change-Id: I41e1fcb37755906e29e6937b805cfb3018e90438 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888937 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Liviu Rau <liviurau@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64640} TBR=machenbach@chromium.org,tmrts@chromium.org,liviurau@chromium.org Change-Id: Ifbae1d7aedbfb7e4f7622c5a2bec74bc2f06e7f6 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9898 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890092Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Liviu Rau <liviurau@chromium.org> Cr-Commit-Position: refs/heads/master@{#64645}
-
Santiago Aboy Solanes authored
Bug: v8:7703 Change-Id: I33e0c82c25d0c43f940d6cf0aff0abc04403b095 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876058 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64644}
-
Santiago Aboy Solanes authored
Bug: v8:7703 Change-Id: I06c47aa4057362d52e53b6a45d4e8a5febb92c82 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876055 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64643}
-
Santiago Aboy Solanes authored
Temporarily enable the flag to test the performance of the DecompressionOptimization reducer. Bug: v8:7703 Change-Id: Ia55d732a73f2aef7ef6e3da329c19b2752a41459 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890091Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64642}
-
Jakob Gruber authored
The test was originally skipped due to slowness. This might have been fixed by reduced store-store zone allocations (see the linked bug). Locally, this now runs in less than 20 seconds in full x64 debug mode. The largest zone is < 100MB: 12089344, "V8.TFAllocateGeneralRegisters" 21954208, "graph-zone" 26181688, "../../src/compiler/verifier.cc:2000" 57895456, "instruction-zone" 98933872, "register-allocation-zone" Drive-by: Remove tsan SLOW annotation, it's already marked SLOW in the ALWAYS block. Bug: v8:9572 Change-Id: Ic3ffd3de732e262f412f1d7a66448ea7228582f2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889872 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64641}
-
Liviu Rau authored
Bug: v8:9898 Change-Id: I41e1fcb37755906e29e6937b805cfb3018e90438 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888937Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Liviu Rau <liviurau@chromium.org> Cr-Commit-Position: refs/heads/master@{#64640}
-
Santiago Aboy Solanes authored
It was used only with Register inputs, so we can replace its uses with the Registers themselves. Change-Id: I1ea3ed88ee41177b696a7281cdf3b90fefdc5870 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1886916Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64639}
-
Santiago Aboy Solanes authored
Smi checks get lowered to Word32And, so they are important to consider in the reducer. Bug: v8:7703 Change-Id: Ie6e2403db84f83808edcc1e44ecb60ecd72ae34d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876053 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64638}
-
Santiago Aboy Solanes authored
Effect control linearization knows about compressed values only when DecompressionElimination is active. Bug: v8:7703 Change-Id: I7854488322f846f94c644e057ab1c32641adf662 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1883896Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64637}
-
Gus Caplan authored
Change-Id: I2a1ad1835b751237b350e56d64e3475459bfb7a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873715 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64636}
-
Dominik Inführ authored
Change SlotSet representation to a variable-sized array of pointers to buckets. The length of the array/number of buckets depends on the size of the page. Before this change the SlotSet always stored a fixed number of buckets. Large pages needed a SlotSet-Array to cover the whole object. Now both regular and large pages both use a single SlotSet object, which contains all bucket pointers. Change-Id: I2d8d62fad54b58409cd39ae7a52c64497ee7c261 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876811Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#64635}
-
Jakob Gruber authored
This is a reland of 4a16305b The original CL adjust only one part of the stack check, namely the comparison of the stack pointer against the stack limit in generated code. There is a second part: Runtime::kStackGuard repeats this check to distinguish between a stack overflow and an interrupt request. This second part in runtime must apply the offset just like in generated code. It is implemented in this reland by the StackCheckOffset operator and a new StackGuardWithGap runtime function. Original change's description: > [compiler] Optionally apply an offset to stack checks > > The motivation behind this change is that the frame size of an optimized > function and its unoptimized version may differ, and deoptimization > may thus trigger a stack overflow. The solution implemented in this CL > is to optionally apply an offset to the stack check s.t. the check > becomes 'sp - offset > limit'. The offset is applied to stack checks at > function-entry, and is set to the difference between the optimized and > unoptimized frame size. > > A caveat: OSR may not be fully handled by this fix since we've already > passed the function-entry stack check. A possible solution would be to > *not* skip creation of function-entry stack checks for inlinees. > > This CL: 1. annotates stack check nodes with the stack check kind, where > kind is one of {function-entry,iteration-body,unknown}. 2. potentially > allocates a temporary register to store the result of the 'sp - offset' > in instruction selection (and switches input registers to 'unique' > mode). 3. Applies the offset in code generation. > > Drive-by: Add src/compiler/globals.h for compiler-specific globals. > > Bug: v8:9534,chromium:1000887 > Change-Id: I257191c4a4978ccb60cfa5805ef421f30f0e9826 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1762521 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63701} Bug: v8:9534, chromium:1000887 Change-Id: I71771c281afd7d57c09aa48ea1b182d01e6dee2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1822037Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64634}
-
Clemens Backes authored
{Smi::ToInt} has only one character more. R=mstarzinger@chromium.org Bug: v8:9810 Change-Id: I1e91bb3623a354ceeee1dc93822011a6809281d5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1886922Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64633}
-