- 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 1 commit
-
-
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}
-
- 25 Jun, 2015 1 commit
-
-
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}
-
- 23 Jun, 2015 1 commit
-
-
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}
-
- 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}
-
- 18 Jun, 2015 4 commits
-
-
conradw authored
Revert of Revert of [strong] Implement strong mode restrictions on property access (patchset #1 id:1 of https://codereview.chromium.org/1189153002/) Reason for revert: Issue was ultimately caused/fixed by https://codereview.chromium.org/1194673002/ Original issue's description: > Revert of [strong] Implement strong mode restrictions on property access (patchset #23 id:460001 of https://codereview.chromium.org/1168093002/) > > Reason for revert: > Speculative revert, maybe breaks GC-stress > > http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/808 > > Original issue's description: > > [strong] Implement strong mode restrictions on property access > > > > Implements the strong mode proposal's restrictions on property access. > > > > To be fully explored in a followup: proxies, interceptors, access checks, load from super > > > > BUG=v8:3956 > > LOG=N > > > > Committed: https://crrev.com/85dbfb9a389e7b21bd2a63862202ee97fc5d7982 > > Cr-Commit-Position: refs/heads/master@{#29109} > > TBR=rossberg@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:3956 > > Committed: https://crrev.com/407657b706711fd5f8d417841e24b284886f3776 > Cr-Commit-Position: refs/heads/master@{#29115} TBR=rossberg@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1185343005 Cr-Commit-Position: refs/heads/master@{#29122}
-
ulan authored
RegExpExecStub pushes callee-saved registers without setting up a frame. This confuses the stack iterator. Other architectures do not save these registers. BUG=chromium:487981 LOG=NO TEST=mjsunit/regress/regress-487981 Review URL: https://codereview.chromium.org/1183593005 Cr-Commit-Position: refs/heads/master@{#29120}
-
conradw authored
Revert of [strong] Implement strong mode restrictions on property access (patchset #23 id:460001 of https://codereview.chromium.org/1168093002/) Reason for revert: Speculative revert, maybe breaks GC-stress http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/808 Original issue's description: > [strong] Implement strong mode restrictions on property access > > Implements the strong mode proposal's restrictions on property access. > > To be fully explored in a followup: proxies, interceptors, access checks, load from super > > BUG=v8:3956 > LOG=N > > Committed: https://crrev.com/85dbfb9a389e7b21bd2a63862202ee97fc5d7982 > Cr-Commit-Position: refs/heads/master@{#29109} TBR=rossberg@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3956 Review URL: https://codereview.chromium.org/1189153002 Cr-Commit-Position: refs/heads/master@{#29115}
-
conradw authored
Implements the strong mode proposal's restrictions on property access. To be fully explored in a followup: proxies, interceptors, access checks, load from super BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1168093002 Cr-Commit-Position: refs/heads/master@{#29109}
-
- 08 Jun, 2015 1 commit
-
-
conradw authored
Boolean "is_strong" parameters have begun to proliferate across areas where strong mode semantics are different. This CL repurposes the existing ObjectStrength enum as a replacement for them. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1144183004 Cr-Commit-Position: refs/heads/master@{#28839}
-
- 02 Jun, 2015 1 commit
-
-
conradw authored
Copied, with permission, from https://codereview.chromium.org/1151853003/ Initial patch set is an unmodified copy, rebased on top of related fixes from https://codereview.chromium.org/1158933002/ Subsequent patch sets contain fixes for remaining bugs in the CL. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1152093003 Cr-Commit-Position: refs/heads/master@{#28760}
-
- 01 Jun, 2015 1 commit
-
-
erikcorry authored
When compiling on a laptop I like to concatenate the small test files. This makes a big difference to compile times. These changes make that easier. R=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1163803002 Cr-Commit-Position: refs/heads/master@{#28742}
-
- 22 May, 2015 1 commit
-
-
mvstanton authored
Also introduce new interface descriptors for the trampoline and full versions of those stubs. Currently, the stubs aren't functional. BUG= Review URL: https://codereview.chromium.org/1149903005 Cr-Commit-Position: refs/heads/master@{#28597}
-
- 20 May, 2015 1 commit
-
-
mvstanton authored
Also removed ornamentation like "VectorRaw" from stub names. BUG= Review URL: https://codereview.chromium.org/1144063002 Cr-Commit-Position: refs/heads/master@{#28516}
-
- 15 May, 2015 2 commits
-
-
mvstanton authored
Now that vector ics are established for load, keyed load and call ics, let's remove dead code behind the flag. BUG= Review URL: https://codereview.chromium.org/1129853002 Cr-Commit-Position: refs/heads/master@{#28422}
-
martyn.capewell authored
Enable clang's shorten-64-to-32 warning flag on ARM64, and fix the warnings that arise. BUG= Review URL: https://codereview.chromium.org/1131573006 Cr-Commit-Position: refs/heads/master@{#28412}
-
- 12 May, 2015 1 commit
-
-
conradw authored
Implements the strong mode proposal's restrictions on implicit conversions for the binary >, >=, <, and <= operators. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1130283002 Cr-Commit-Position: refs/heads/master@{#28370}
-
- 06 May, 2015 2 commits
-
-
conradw authored
https://codereview.chromium.org/1125783002 did not handle all cases for some architectures. These cases are now covered, and tests have been extended to check them. BUG=v8:4073 LOG=N Review URL: https://codereview.chromium.org/1128143002 Cr-Commit-Position: refs/heads/master@{#28266}
-
mvstanton authored
typeof was implemented as a runtime function. Calling it in optimized code with a non-constant input becomes burdensome. BUG= Review URL: https://codereview.chromium.org/1114563003 Cr-Commit-Position: refs/heads/master@{#28260}
-
- 05 May, 2015 4 commits
-
-
dslomov authored
ArgumentsAdaptorStub for derived constructor (the one that needs new.target) works in this way: - If the constructor is invoked via the Construct stub, we know that actual arguments always include new.target. ``arguments`` object however should not include a new.target, therefore we remove it. We achieve this by decrementing the argument count. - If the constructor is invoked as a call, we do not care for a correct ``arguments`` array since the constructor will immediately throw on entrance. The bug is that the call could actually pass 0 actual arguments, but I decrement unconditionally :(. The fix is to detect this case and avoid decrementing. ``arguments`` is bogus, but it is ok as constructor throws. Long-term we should just remove mucking about with arguments for new.target and just get it from the stack. R=arv@chromium.org,rossberg@chromium.org BUG=chromium:474783 LOG=Y Review URL: https://codereview.chromium.org/1126783003 Cr-Commit-Position: refs/heads/master@{#28242}
-
danno authored
Revert of Collect type feedback on result of Math.[round|ceil|floor] (patchset #13 id:230001 of https://codereview.chromium.org/1053143005/) Reason for revert: All sorts of performance regressions Original issue's description: > Collect type feedback on result of Math.[round|ceil|floor] > > By recording invocations of these builtins that can return -0, we now learn to not emit Crankshaft code that only handles integer results, avoiding deopt loops. > > Committed: https://crrev.com/f36ecaf3a4d61568ca50a20718acce7dd5da9a5f > Cr-Commit-Position: refs/heads/master@{#28215} TBR=mvstanton@chromium.org,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1115973005 Cr-Commit-Position: refs/heads/master@{#28237}
-
arv authored
When comparing a symbol to istself using <, <=, > or >= we need to throw a TypeError. This is correctly handled in the runtime function so if we are comparing a symbol fall back to use the runtime. BUG=v8:4073 LOG=Y R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1125783002 Cr-Commit-Position: refs/heads/master@{#28226}
-
danno authored
By recording invocations of these builtins that can return -0, we now learn to not emit Crankshaft code that only handles integer results, avoiding deopt loops. Review URL: https://codereview.chromium.org/1053143005 Cr-Commit-Position: refs/heads/master@{#28215}
-
- 04 May, 2015 1 commit
-
-
jarin authored
BUG=v8:3985 LOG=n R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1122083002 Cr-Commit-Position: refs/heads/master@{#28206}
-
- 10 Apr, 2015 1 commit
-
-
verwaest authored
This fixes the arm(64) and mips(64) write barriers BUG= Review URL: https://codereview.chromium.org/1073133002 Cr-Commit-Position: refs/heads/master@{#27751}
-
- 09 Apr, 2015 2 commits
-
-
adamk authored
Revert of Merge cellspace into old pointer space (patchset #8 id:180001 of https://codereview.chromium.org/1010803012/) Reason for revert: Causes test failures on ARM bots related to cells and write barriers. Original issue's description: > Merge cellspace into old pointer space > > BUG= > > Committed: https://crrev.com/4e7163ce05f135918205c7855ae60a48e5d46cc5 > Cr-Commit-Position: refs/heads/master@{#27707} TBR=hpayer@chromium.org,balazs.kilvady@imgtec.com,yangguo@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1053243003 Cr-Commit-Position: refs/heads/master@{#27711}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1010803012 Cr-Commit-Position: refs/heads/master@{#27707}
-
- 07 Apr, 2015 2 commits
-
-
mvstanton authored
Thanks to some careful assumptions, we can examine the object found at vector[slot] and trust it's a heap object where the second field is either a map if it's a WeakCell, or definitely not a map if it's a Symbol, String or FixedArray. Use this to save a memory read. BUG= Review URL: https://codereview.chromium.org/1032163002 Cr-Commit-Position: refs/heads/master@{#27631}
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1057613003 Cr-Commit-Position: refs/heads/master@{#27630}
-
- 02 Apr, 2015 1 commit
-
-
mvstanton authored
BUG=v8:3539 R=verwaest@chromium.org LOG=N Review URL: https://codereview.chromium.org/1029093002 Cr-Commit-Position: refs/heads/master@{#27581}
-
- 31 Mar, 2015 1 commit
-
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1040183004 Cr-Commit-Position: refs/heads/master@{#27536}
-
- 25 Mar, 2015 1 commit
-
-
mstarzinger authored
This switches full-codegen to no longer push and pop StackHandler markers onto the operand stack, but relies on a range-based handler table instead. We only use StackHandlers in JSEntryStubs to mark the transition from C to JS code. Note that this makes deoptimization and OSR from within any try-block work out of the box, makes the non-exception paths faster and should overall be neutral on the memory footprint (pros). On the other hand it makes the exception paths slower and actually throwing and exception more expensive (cons). R=yangguo@chromium.org TEST=cctest/test-run-jsexceptions/DeoptTry Review URL: https://codereview.chromium.org/1010883002 Cr-Commit-Position: refs/heads/master@{#27440}
-
- 23 Mar, 2015 1 commit
-
-
mvstanton authored
Handlers should be in charge of this work. The change uncovered a bug in vector-ics related to keyed loads into strings. It's important for StringCharCodeAtGenerator, a helper used in full code and in LoadIndexedStringStub (a handler) to protect the vector and slot registers when it makes a runtime call to convert a HeapNumber to a Smi. It's still possible for the handler to MISS after this call, perhaps due to out of bounds access. In that case, the vector and slot registers need to be delivered safely to the MISS handler. BUG= Review URL: https://codereview.chromium.org/1028093002 Cr-Commit-Position: refs/heads/master@{#27377}
-
- 17 Mar, 2015 2 commits
-
-
mstarzinger authored
This ensures that there is only one stub that deals with unwinding the stack. Having more than one place containing that logic is brittle and error prone, especially when it is a corner case only for RangeErrors. R=titzer@chromium.org TEST=mjsunit/regress/regress-crbug-467047 BUG=chromium:467047 LOG=N Review URL: https://codereview.chromium.org/1012103002 Cr-Commit-Position: refs/heads/master@{#27243}
-
mvstanton authored
A hydrogen code stub is not the best approach because it builds a frame and doesn't have the technology to discard roots at tail call exits. Platform-specific stubs provide much better performance at this point. R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/988653003 Cr-Commit-Position: refs/heads/master@{#27235}
-
- 16 Mar, 2015 1 commit
-
-
svenpanne authored
Fix the resulting warnings by renaming things apart. BUG=v8:3947 LOG=n Review URL: https://codereview.chromium.org/1009373002 Cr-Commit-Position: refs/heads/master@{#27219}
-
- 06 Mar, 2015 1 commit
-
-
svenpanne authored
This involved renaming apart a few more intrinsics. In the long run, we want to clean up redundant intrinsics which just delegate. BUG=v8:3947 LOG=n Review URL: https://codereview.chromium.org/984963002 Cr-Commit-Position: refs/heads/master@{#27043}
-
- 05 Mar, 2015 1 commit
-
-
mstarzinger authored
This extends the stack unwinding logic to respect optimized frames and perform a lookup in the handler table to find handlers. It also contains fixes to the API call stubs to allow a stack walk while promoting scheduled exceptions. R=jarin@chromium.org TEST=cctest/test-run-jsexceptions Review URL: https://codereview.chromium.org/969533004 Cr-Commit-Position: refs/heads/master@{#27016}
-
- 03 Mar, 2015 1 commit
-
-
dslomov authored
R=mvstanton@chromium.org,arv@chromium.org,rossberg@chromium.org BUG=v8:3930 LOG=Y Committed: https://crrev.com/6898da1a28d64d1fb2962804ba566f6d618ffc70 Cr-Commit-Position: refs/heads/master@{#26960} Committed: https://crrev.com/8d29cc11a56e77297792fe100986a80b65de0051 Cr-Commit-Position: refs/heads/master@{#26963} Committed: https://crrev.com/0705045b50a29cf1273e9e6b86fe6a627d8dcb43 Cr-Commit-Position: refs/heads/master@{#26966} Review URL: https://codereview.chromium.org/975463002 Cr-Commit-Position: refs/heads/master@{#26972}
-