- 13 Jul, 2015 5 commits
-
-
ishell authored
NON_CONTEXTUAL ~> INSIDE_TYPEOF CONTEXTUAL ~> NOT_INSIDE_TYPEOF Review URL: https://codereview.chromium.org/1227893005 Cr-Commit-Position: refs/heads/master@{#29611}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1235893002 Cr-Commit-Position: refs/heads/master@{#29607}
-
yangguo authored
- split relocation info for debug break slots for - calls (with call arguments count as data) - construct calls - normal slots - renamed DEBUG_BREAK into DEBUGGER_STATEMENT - removed unused IC state for Debug stubs R=ulan@chromium.org BUG=v8:4269 LOG=N Review URL: https://codereview.chromium.org/1232803002 Cr-Commit-Position: refs/heads/master@{#29603}
-
ishell authored
Loads and stores to global vars are now made via property cell shortcuts installed into parent script context. This CL also adds hydrogen stubs for global loads and global stores, full-codegen and TurboFan now uses this machinery. Review URL: https://codereview.chromium.org/1224793002 Cr-Commit-Position: refs/heads/master@{#29592}
-
mstarzinger authored
Note that there are currently no objects that require a pre-allocated properties backing store, all such slots are in-object properties from the begining. Hence {unused + pre_allocated - inobject == 0} holds. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/1226203011 Cr-Commit-Position: refs/heads/master@{#29590}
-
- 10 Jul, 2015 4 commits
-
-
yangguo authored
If we do it too early, we might get a constant pool between the reloc info and the actual slot. R=ulan@chromium.org Review URL: https://codereview.chromium.org/1229673005 Cr-Commit-Position: refs/heads/master@{#29568}
-
ishell authored
BUG=chromium:490021 LOG=N Review URL: https://codereview.chromium.org/1235563002 Cr-Commit-Position: refs/heads/master@{#29567}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1213623020 Cr-Commit-Position: refs/heads/master@{#29562}
-
yangguo authored
Break point at calls are currently set via IC. To change this, we need to set debug break slots instead. We also need to distinguish those debug break slots as calls to support step-in. To implement this, we add a data field to debug break reloc info to indicate non-call debug breaks or in case of call debug breaks, the number of arguments. We can later use this to find the callee on the evaluation stack in Debug::PrepareStep. BUG=v8:4269 R=ulan@chromium.org LOG=N Review URL: https://codereview.chromium.org/1222093007 Cr-Commit-Position: refs/heads/master@{#29561}
-
- 08 Jul, 2015 3 commits
-
-
danno authored
- Add a TurboFanIC class, derived from TurboFanCodeStub, that automatically distinguishes between versions of the IC called from optimized and unoptimized code. - Add appropriate InterfaceDescriptors for both the versions of the stub called from unoptimized and optimized code - Change the MathFloor TF stub generator to output either the for-optimized or for-unoptimized version based on the minor_key parameter. Committed: https://crrev.com/8f13b655b8a10dae2116dd18b32f09337bb2d410 Cr-Commit-Position: refs/heads/master@{#29534} Review URL: https://codereview.chromium.org/1225943002 Cr-Commit-Position: refs/heads/master@{#29539}
-
danno authored
Revert of Add unoptimized/optimized variants of MathFloor TF code stub (patchset #4 id:60001 of https://codereview.chromium.org/1225943002/) Reason for revert: Failure on compiling runtime.js on windows Original issue's description: > Add unoptimized/optimized variants of MathFloor TF code stub > > - Add a TurboFanIC class, derived from TurboFanCodeStub, that > automatically distinguishes between versions of the IC called from > optimized and unoptimized code. > - Add appropriate InterfaceDescriptors for both the versions of the > stub called from unoptimized and optimized code > - Change the MathFloor TF stub generator to output either the > for-optimized or for-unoptimized version based on the minor_key > parameter. > > Committed: https://crrev.com/8f13b655b8a10dae2116dd18b32f09337bb2d410 > Cr-Commit-Position: refs/heads/master@{#29534} TBR=mvstanton@chromium.org,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1220783006 Cr-Commit-Position: refs/heads/master@{#29535}
-
danno authored
- Add a TurboFanIC class, derived from TurboFanCodeStub, that automatically distinguishes between versions of the IC called from optimized and unoptimized code. - Add appropriate InterfaceDescriptors for both the versions of the stub called from unoptimized and optimized code - Change the MathFloor TF stub generator to output either the for-optimized or for-unoptimized version based on the minor_key parameter. Review URL: https://codereview.chromium.org/1225943002 Cr-Commit-Position: refs/heads/master@{#29534}
-
- 07 Jul, 2015 2 commits
-
-
ishell authored
Review URL: https://codereview.chromium.org/1222203007 Cr-Commit-Position: refs/heads/master@{#29520}
-
mstarzinger authored
This unifies the existing frame constants that are the same accross all architectures. It also adds a new kOriginalConstructorOffset constant for construct frames and uses is in full-codegen. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1220223005 Cr-Commit-Position: refs/heads/master@{#29509}
-
- 06 Jul, 2015 2 commits
-
-
ishell authored
Review URL: https://codereview.chromium.org/1218783005 Cr-Commit-Position: refs/heads/master@{#29498}
-
yangguo authored
BUG=v8:3147,v8:4269 LOG=N Review URL: https://codereview.chromium.org/1218493005 Cr-Commit-Position: refs/heads/master@{#29487}
-
- 02 Jul, 2015 1 commit
-
-
verwaest authored
BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1221713003 Cr-Commit-Position: refs/heads/master@{#29447}
-
- 01 Jul, 2015 1 commit
-
-
danno authored
Up until now the context register was listed explicitly in each stub's CallInterfaceDescriptor. This was problematic, because it was listed first in the list of register parameters--which is fine for Crankshaft, which is more or less built to handle the context as the first parameter-- but not ideal for TurboFan, which adds the context at the end of all function parameters. Now the context register is no longer in the register list and can be handled appropriately by both compilers. Specifically, this allows the FunctionType specified for each CallInterfaceDescriptor to exactly match the parameter register list. Review URL: https://codereview.chromium.org/1211333003 Cr-Commit-Position: refs/heads/master@{#29402}
-
- 30 Jun, 2015 3 commits
-
-
conradw authored
Revert "Revert relanded strong property access CL" Regression issues should be solved. Initial patchset is the original, subsequent patchsets are the fixing modifications. This reverts commit 4ac7be56. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1199983002 Cr-Commit-Position: refs/heads/master@{#29384}
-
conradw authored
Also fixes a crankshaft bug with strong implicit conversions. It turns out that the implicit conversion of oddball values is smushed into so many places in crankshaft that it would have been pretty invasive surgery to make everything fall out naturally. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1216463003 Cr-Commit-Position: refs/heads/master@{#29381}
-
mstarzinger authored
Reland of https://crrev.com/bf2bbc8ba508ccd21edf3c08d2e4192c4764ae91 R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-498022 BUG=chromium:498022 LOG=N Review URL: https://codereview.chromium.org/1214483008 Cr-Commit-Position: refs/heads/master@{#29372}
-
- 29 Jun, 2015 1 commit
-
-
arv authored
This makes new.target work in [[Call]] and [[Construct]] of ordinary functions. We achieve this by introducing a new construct stub for functions that uses the new.target variable. The construct stub pushes the original constructor just above the receiver in the construct frame. BUG=v8:3887 LOG=N R=adamk@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/1203813002 Cr-Commit-Position: refs/heads/master@{#29358}
-
- 26 Jun, 2015 2 commits
-
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1209903003 Cr-Commit-Position: refs/heads/master@{#29310}
-
bmeurer authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/1210863002 Cr-Commit-Position: refs/heads/master@{#29309}
-
- 25 Jun, 2015 6 commits
-
-
wingo authored
Originally applied in https://codereview.chromium.org/1202963005 BUG=v8:4214 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel LOG=N R=arv@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1208873002 Cr-Commit-Position: refs/heads/master@{#29293}
-
arv authored
The stack layout was different for different ports. BUG=v8:3887 LOG=N R=dslomov@chromium.org, adamk@chromium.org Review URL: https://codereview.chromium.org/1203103003 Cr-Commit-Position: refs/heads/master@{#29292}
-
yangguo authored
BUG=v8:4132 LOG=N Review URL: https://codereview.chromium.org/1211803002 Cr-Commit-Position: refs/heads/master@{#29291}
-
yangguo authored
Revert of Reland "Keep a canonical list of shared function infos." (patchset #3 id:40001 of https://codereview.chromium.org/1211453002/) Reason for revert: proxies test failing https://chromegw.corp.google.com/i/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/903/steps/Mjsunit/logs/proxies Original issue's description: > Reland "Keep a canonical list of shared function infos." > > This reverts commit 3164aa74. > > Committed: https://crrev.com/cacb646d80daa429f6915824a741f595db7d5044 > Cr-Commit-Position: refs/heads/master@{#29282} TBR=adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1206263002 Cr-Commit-Position: refs/heads/master@{#29285}
-
yangguo authored
This reverts commit 3164aa74. Review URL: https://codereview.chromium.org/1211453002 Cr-Commit-Position: refs/heads/master@{#29282}
-
Michael Stanton authored
The idea is that TurboFan can use this information for more intelligent inlining. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1201193003 Cr-Commit-Position: refs/heads/master@{#29281}
-
- 24 Jun, 2015 4 commits
-
-
machenbach authored
Revert of Fix receiver when calling eval() bound by with scope (patchset #3 id:40001 of https://codereview.chromium.org/1202963005/) Reason for revert: [Sheriff] Breaks layout tests. Please fix upstream blink first. http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Mac/builds/574 Please consider extra blink trybots on a reland. Original issue's description: > Fix receiver when calling eval() bound by with scope > > Thanks to André Bargull for the report. > > BUG=v8:4214 > LOG=N > R=arv@chromium.org, mstarzinger@chromium.org > > Committed: https://crrev.com/3c5f0db3a1768ade68108bf003676ce378d1cbdc > Cr-Commit-Position: refs/heads/master@{#29259} TBR=arv@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org,wingo@igalia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4214 Review URL: https://codereview.chromium.org/1201273004 Cr-Commit-Position: refs/heads/master@{#29267}
-
wingo authored
Thanks to André Bargull for the report. BUG=v8:4214 LOG=N R=arv@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1202963005 Cr-Commit-Position: refs/heads/master@{#29259}
-
jacob.bramley authored
The original implementation assumed that LPushArguments and LInvoke/Call* could be assumed to be exclusively sequential. However, this isn't always the case. For example, GenerateCallFunction pushes some arguments and then selects between HInvokeFunction and HCallFunction. This fixed implementation resets a pushed_arguments_ counter based on the argument_count() of the preceeding basic block, then tracks it per-instruction as before (except that now we maintain a count rather than a boolean flag). At the same time, since we now track exactly how many arguments have been pushed onto the stack, I was able to adjust the offset accordingly and use jssp for stack slots even when arguments have been pushed. BUG= Review URL: https://codereview.chromium.org/1038363002 Cr-Commit-Position: refs/heads/master@{#29249}
-
danno authored
- Thread Type::FunctionType through stubs and the TF pipeline. - Augment Typer to decorate parameter nodes with types from a Type::FunctionType associated with interface descriptors. - Factor interface descriptors into platform-specific and platform-independent components so that all descriptors share a common Type::FunctionType for all platforms. Review URL: https://codereview.chromium.org/1197703002 Cr-Commit-Position: refs/heads/master@{#29248}
-
- 23 Jun, 2015 3 commits
-
-
adamk authored
Speculative revert in the hopes of fixing serializer crashes seen in canary. This reverts commit c1669450, as well as followup change "Do not look for existing shared function info when compiling a new script." (commit 7c43967b). BUG=chromium:503552,v8:4132 TBR=yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/1207583002 Cr-Commit-Position: refs/heads/master@{#29241}
-
dslomov authored
JSConstructStub for subclass constructors instead locates new.target in a known location on the stack. R=arv@chromium.org,adamk@chromium.org BUG=v8:3886 LOG=N Review URL: https://codereview.chromium.org/1196193014 Cr-Commit-Position: refs/heads/master@{#29238}
-
bmeurer authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/1191283003 Cr-Commit-Position: refs/heads/master@{#29211}
-
- 22 Jun, 2015 1 commit
-
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1180713007 Cr-Commit-Position: refs/heads/master@{#29175}
-
- 21 Jun, 2015 1 commit
-
-
mvstanton authored
Turbofan needs to pass vector slots around for named and keyed stores. Also, the CL addresses a missing slot for ClassLiterals. BUG= Review URL: https://codereview.chromium.org/1178363002 Cr-Commit-Position: refs/heads/master@{#29173}
-
- 19 Jun, 2015 1 commit
-
-
conradw authored
Reason: Regressions in various benchmarks. Revert "Revert of Revert of [strong] Implement strong mode restrictions on property access (patchset #1 id:1 of https://codereview.chromium.org/1189153002/)" This reverts commit 41405c04. Revert "X87: Revert of Revert of [strong] Implement strong mode restrictions on property access." This reverts commit 48de5f4d. Revert "Fix overlapping KeyedLoadIC bitfield." This reverts commit 4e6c956a. Revert "MIPS64: Fix 'Revert of Revert of [strong] Implement strong mode restrictions on property access'." This reverts commit 74f97b0d. BUG= Review URL: https://codereview.chromium.org/1199493002 Cr-Commit-Position: refs/heads/master@{#29166}
-