- 05 Apr, 2016 1 commit
-
-
mstarzinger authored
This makes sure the SharedFunctionInfo is available whenever we evaluate the UseIgnition predicate. This makes sure we can apply filters properly even when the interpreter causes eager compilation (instead of lazy). R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/1860943002 Cr-Commit-Position: refs/heads/master@{#35263}
-
- 04 Apr, 2016 1 commit
-
-
yangguo authored
Statement positions should overwrite expression positions if they have the same bytecode offset. R=mstarzinger@chromium.org, vogelheim@chromium.org BUG=v8:4680,v8:4689 LOG=N Review URL: https://codereview.chromium.org/1855913002 Cr-Commit-Position: refs/heads/master@{#35236}
-
- 31 Mar, 2016 1 commit
-
-
machenbach authored
BUG=v8:2999,v8:4751 LOG=n NOTRY=true TBR=hablich@chromium.org Review URL: https://codereview.chromium.org/1850443004 Cr-Commit-Position: refs/heads/master@{#35149}
-
- 24 Mar, 2016 1 commit
-
-
rmcilroy authored
Makes --ignition cause eager compilation if we aren't building the startup snapshot. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1811553003 Cr-Commit-Position: refs/heads/master@{#35066}
-
- 22 Mar, 2016 1 commit
-
-
mythria authored
Fixes CopyBytecodeArray to set the interrupt_budget field. BUG=v8:4280,v8:4690 LOG=N Review URL: https://codereview.chromium.org/1809123003 Cr-Commit-Position: refs/heads/master@{#34982}
-
- 21 Mar, 2016 1 commit
-
-
machenbach authored
BUG=v8:2999,v8:4751 LOG=n NOTRY=true TBR=hablich@chromium.org Review URL: https://codereview.chromium.org/1820813003 Cr-Commit-Position: refs/heads/master@{#34943}
-
- 18 Mar, 2016 2 commits
-
-
mstarzinger authored
The trigger point in question is by now obsolete. The optimized compile job will itself ensure that deoptimization support is present on the incoming SharedFunctionInfo, this will make sure to produce baseline code when necessary. The ScopeInfo is also installed at that point in time. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1816513002 Cr-Commit-Position: refs/heads/master@{#34887}
-
akos.palfi authored
Adjust the status file after https://codereview.chromium.org/1784343004 Also removed the tests that are not failing anymore on big-endian. BUG= Review URL: https://codereview.chromium.org/1814833003 Cr-Commit-Position: refs/heads/master@{#34886}
-
- 17 Mar, 2016 2 commits
-
-
mlippautz authored
This reverts commit 4857110c. This change was flushing out another issue which is fixed in https://codereview.chromium.org/1783283003/ BUG=v8:2999 LOG=N Review URL: https://codereview.chromium.org/1785933003 Cr-Commit-Position: refs/heads/master@{#34874}
-
yangguo authored
Immortal immovable roots must be allocated on the first page of the space. If serializing the root list exceeds the first page, immortal immovable root objects might end up outside of the first page. That could cause missing write barriers. We now iterate the root list twice. The first time we only serialize immortal immovable root objects. The second time we serialize the rest. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1811913002 Cr-Commit-Position: refs/heads/master@{#34859}
-
- 16 Mar, 2016 1 commit
-
-
machenbach authored
The feature was removed from the bots a while ago. It was superseeded by the flaky-test detection which reruns tests. Remaining tests still marked as flaky most certainly pass since a while. Referencing all the bugs whose expectations lines get removed by this. BUG=v8:3838,v8:3525,v8:3125 LOG=n Review URL: https://codereview.chromium.org/1802983002 Cr-Commit-Position: refs/heads/master@{#34804}
-
- 15 Mar, 2016 3 commits
-
-
mythria authored
Updates InlineTwice to declare a function and then return a function instead of using function expressions by wrapping a function with '(' and ')'. The earlier implementation would cause the function to compile immediately instead of lazy compile. Also updates cctest.status BUG=v8:4280,v8:4837,v8:4680 LOG=N Review URL: https://codereview.chromium.org/1800073002 Cr-Commit-Position: refs/heads/master@{#34790}
-
yangguo authored
R=rmcilroy@chromium.org, vogelheim@chromium.org BUG=v8:4690 LOG=N Review URL: https://codereview.chromium.org/1802903002 Cr-Commit-Position: refs/heads/master@{#34781}
-
machenbach authored
BUG=v8:4280 LOG=n TBR=rmcilroy@chromium.org, mstarzinger@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1799423004 Cr-Commit-Position: refs/heads/master@{#34772}
-
- 11 Mar, 2016 2 commits
-
-
mythria authored
Updates cctest.status and also updates the test cctest/test-serialize/SerializeInternalReference to return success when FLAG_ignition is true. This test tests for internal references and is not relevant for interpreter. BUG=v8:4280,v8:4680 LOG=N Review URL: https://codereview.chromium.org/1782893002 Cr-Commit-Position: refs/heads/master@{#34723}
-
vogelheim authored
FullCodegen generates 2 statement positions for the loop init block, like so: for(var i = 0; i.... ^ ^ This change removes the first of those, updates unit tests, and removes text expectations for Ignition. --- An alternative would be to emulate the existing behaviour in Ignition, but: - The new behaviour seems more logical, - Ignition generates no bytecodes for the 'var', meaning there is no code position to attach the break position to. BUG=v8:4690 LOG=Y Review URL: https://codereview.chromium.org/1784883002 Cr-Commit-Position: refs/heads/master@{#34717}
-
- 10 Mar, 2016 3 commits
-
-
mstarzinger authored
This ensures the interpreter is not tasked with compiling generator functions. It currently does not support suspending activations at yielding points, but we still want to be able to activate it for the rest of JavaScript in the meantime. R=rmcilroy@chromium.org BUG=v8:4681 LOG=n Review URL: https://codereview.chromium.org/1782013002 Cr-Commit-Position: refs/heads/master@{#34672}
-
rossberg authored
R=mstarzinger@chromium.org,bmeurer@chromium.org,adamk@chromium.org BUG=v8:3956 LOG=Y Review URL: https://codereview.chromium.org/1773653002 Cr-Commit-Position: refs/heads/master@{#34669}
-
yangguo authored
Changes include: - better test coverage for builds with snapshot - write snapshot blobs to buffer instead of test serialization files - renamed tests R=machenbach@chromium.org Review URL: https://codereview.chromium.org/1777213002 Cr-Commit-Position: refs/heads/master@{#34657}
-
- 08 Mar, 2016 3 commits
-
-
yangguo authored
R=rmcilroy@chromium.org, vogelheim@chromium.org BUG=v8:4690 LOG=N Committed: https://crrev.com/4a7722c9930a42ba0e8feeece286d74834211a7e Cr-Commit-Position: refs/heads/master@{#34569} Review URL: https://codereview.chromium.org/1770773002 Cr-Commit-Position: refs/heads/master@{#34573}
-
yangguo authored
Revert of [interpreter, debugger] add some missing statement positions. (patchset #1 id:1 of https://codereview.chromium.org/1770773002/ ) Reason for revert: failing tests with ignition. Original issue's description: > [interpreter, debugger] add some missing statement positions. > > R=rmcilroy@chromium.org, vogelheim@chromium.org > BUG=v8:4690 > LOG=N > > Committed: https://crrev.com/4a7722c9930a42ba0e8feeece286d74834211a7e > Cr-Commit-Position: refs/heads/master@{#34569} TBR=rmcilroy@chromium.org,vogelheim@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4690 Review URL: https://codereview.chromium.org/1772293002 Cr-Commit-Position: refs/heads/master@{#34570}
-
yangguo authored
R=rmcilroy@chromium.org, vogelheim@chromium.org BUG=v8:4690 LOG=N Review URL: https://codereview.chromium.org/1770773002 Cr-Commit-Position: refs/heads/master@{#34569}
-
- 07 Mar, 2016 1 commit
-
-
zhengxing.li authored
The CL #34376 (https://codereview.chromium.org/1740073002 ) added the Inlining test case and X87 failed at it. The reason is: For TEST(Inlining) test case, when level3 function is inlined, the key optimized crankshaft code will like below code normally: ............ 0x21d53b7f 63 ff571b call [edi+0x1b] <----------- should call action() here ;;; <@32,#27> lazy-bailout ;;; <@36,#31> ---- B3 ---- ;;; <@37,#31> gap 0x21d53b82 66 89c1 mov ecx,eax <----------- Both the inlined function’s pc_offset from DeoptimizationInputData and the pc_offset from sample stack points to here, the same pc address ............ So the TEST(Inlining) test case can get the expected inlined code entry and pass.. In fact, the exact code sequence should like the following in crankshaft: ............ 0x21d53b7f 63 ff571b call [edi+0x1b] <----------- should call action() 0xxxxxxxxx xxxx GenerateBodyInstructionPost() <----------- the pc_offset from sample stack points to here ;;; <@32,#27> lazy-bailout ;;; <@36,#31> ---- B3 ---- ;;; <@37,#31> gap 0x21d53b82 66 89c1 mov ecx,eax <----------- the inlined function’s pc_offset from DeoptimizationInputData points to here. ............ For most of architectures in V8, the GenerateBodyInstructionPost() is empty, so both the inlined function’s pc_offset from DeoptimizationInputData and the pc_offset from sample stack points to the same pc address . But if some architecture has special requirement and need to put some instruction after call instruction, the GenerateBodyInstructionPost() will do that work and generate instructions, the inlined function’s pc_offset from DeoptimizationInputData and The pc_offset from sample stack will points to the different pc address, the TEST(Inlining) test case can’t get the expected inlined code entry and failed. For all current architectures in v8, only x87 have this requirement. After communicated with Alexei Filippov <alph@chromium.org> in E-mail, we decided to disable the Inlining test case for x87 now and try to find a solution. BUG= Review URL: https://codereview.chromium.org/1766263002 Cr-Commit-Position: refs/heads/master@{#34544}
-
- 02 Mar, 2016 5 commits
-
-
mbrandy authored
Newly added tests cause failures on 32-bit bigendian and are skipped until a solution is found. R=titzer@chromium.org, ahaas@chromium.org BUG= Review URL: https://codereview.chromium.org/1761573002 Cr-Commit-Position: refs/heads/master@{#34447}
-
machenbach authored
BUG= Review URL: https://codereview.chromium.org/1753803003 Cr-Commit-Position: refs/heads/master@{#34428}
-
mstarzinger authored
This relaxes the constraints of the optimized code map in order to be able to update existing entries. It also simplifies the interface a little bit. We can now insert an entry for a newly allocated literals array together with previously cached context-independent code. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1753213002 Cr-Commit-Position: refs/heads/master@{#34427}
-
epertoso authored
The macro is currently used by AllocateHeapNumberStub and AllocateMutableHeapNumberStub, which are now turbofan code stubs. It can be used to allocate objects in the new or old space, optionally with double alignment. BUG=588692 LOG=y Review URL: https://codereview.chromium.org/1735803003 Cr-Commit-Position: refs/heads/master@{#34424}
-
rmcilroy authored
Add support to log source position offsets to the profiler. As part of this change PositionsRecorder is split into two, with the subset needed by log.cc moved into log.h and the remainder kept in assembler.h as AssemblerPositionsRecorder. The interpreter's source position table builder is updated to log positions when the profiler is active. BUG=v8:4766 LOG=N Review URL: https://codereview.chromium.org/1737043002 Cr-Commit-Position: refs/heads/master@{#34416}
-
- 01 Mar, 2016 5 commits
-
-
mythria authored
In ia32 PushArgsAndConstruct builtin, we run out of registers and need to temporarily store the data in the stack. In the earlier implementation, a location outside the esp was used. This causes a problem if there is a interrupt/signals which would use the same stack and corrupt the data that is above the esp. This cl fixes it by pushing it onto the stack so that the stack pointer is updated and hence the corruption will not happen. We reuse the slot meant for receiver as a temporary store. TBR=rmcilroy@chromium.org BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1750373002 Cr-Commit-Position: refs/heads/master@{#34397}
-
yangguo authored
R=mstarzinger@chromium.org, vogelheim@chromium.org BUG=v8:4690 LOG=N Review URL: https://codereview.chromium.org/1748343003 Cr-Commit-Position: refs/heads/master@{#34394}
-
mythria authored
Adds the translation from optimized frame to bytecode offset in FrameSummary. For interpreter, the bailout id represents the bytecode array offset. So we can directly use the bailout id as the code offset in the FrameSummary. Also updates mjsunit.status with more information about failing tests. BUG=v8:4280, v8:4689 LOG=N Review URL: https://codereview.chromium.org/1740753002 Cr-Commit-Position: refs/heads/master@{#34393}
-
yangguo authored
R=rmcilroy@chromium.org BUG=v8:4680 LOG=N Review URL: https://codereview.chromium.org/1750573002 Cr-Commit-Position: refs/heads/master@{#34389}
-
yangguo authored
We used to emit debug break location on block entry. This cannot be ported to the interpreted as we do not emit bytecode for block entry. This made no sense to begin with though, but accidentally added break locations for var declarations. With this change, the debugger no longer breaks at var declarations without initialization. This is in accordance with the fact that the interpreter does not emit bytecode for uninitialized var declarations. Also fix the bytecode to match full-codegen's behavior wrt return positions: - there is a break location before the return statement, with the source position of the return statement. - right before the actual return, there is another break location. The source position points to the end of the function. R=rmcilroy@chromium.org, vogelheim@chromium.org TBR=rossberg@chromium.org BUG=v8:4690 LOG=N Review URL: https://codereview.chromium.org/1744123003 Cr-Commit-Position: refs/heads/master@{#34388}
-
- 29 Feb, 2016 1 commit
-
-
verwaest authored
BUG=v8:2999, v8:4751 LOG=n Review URL: https://codereview.chromium.org/1745023002 Cr-Commit-Position: refs/heads/master@{#34360}
-
- 26 Feb, 2016 2 commits
-
-
rmcilroy authored
Rebaselines ForOf bytecodes after shipping iterator finalization in https://codereview.chromium.org/1738463003/. TBR=adamk@chromium.org BUG=v8:3566,v8:4280 LOG=N Review URL: https://codereview.chromium.org/1738143002 Cr-Commit-Position: refs/heads/master@{#34329}
-
rmcilroy authored
Adds support for cpu profiler logging to the interpreter. Modifies the the API to be passed AbstractCode objects instead of Code objects, and adds extra functions to AbstractCode which is required by log.cc and cpu-profiler.cc. The main change in sampler.cc is to determine if a stack frame is an interpreter stack frame, and if so, use the bytecode address as the pc for that frame. This allows sampling of bytecode functions. This requires adding support to SafeStackIterator to determine if a frame is interpreted, which we do by checking the PC against pre-stored addresses for the start and end of interpreter entry builtins. Also removes CodeDeleteEvents which are dead code and haven't been reported for some time. Still to do is tracking source positions which will be done in a followup CL. BUG=v8:4766 LOG=N Review URL: https://codereview.chromium.org/1728593002 Cr-Commit-Position: refs/heads/master@{#34321}
-
- 25 Feb, 2016 4 commits
-
-
littledan authored
This patch moves iterator finalization (calling .return() when a for-of loop exits early) to shipping. The only part of this feature which is currently known to be missing is destructuring--.return() should be also be called when destructuring with an array which does not end in a rest pattern, but it currently does not. The rest of this feature, including calling .return() from certain builtins, is implemented. R=adamk BUG=v8:3566 LOG=Y Review URL: https://codereview.chromium.org/1738463003 Cr-Commit-Position: refs/heads/master@{#34307}
-
mstarzinger authored
R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/1733363002 Cr-Commit-Position: refs/heads/master@{#34299}
-
mattloring authored
It is possible for JS objects to be allocated while we are retrieving the profile. These JS objects can in turn end up getting sampled by the profiler. Adding these to the profile data structures invalidates the iterators that are presently in flight. This change prevents such concurrent modifications from affecting the retrieve operation. BUG= Review URL: https://codereview.chromium.org/1735733002 Cr-Commit-Position: refs/heads/master@{#34298}
-
mstarzinger authored
This adds explicit setters for the SharedFunctionInfo::function_data field. Such setters are safer because they allow for explicit checking of which values are allowed, and they improve readability because the intended semantics become clear for each call-site. Also fix a cctest case along the way. R=rmcilroy@chromium.org Review URL: https://codereview.chromium.org/1730853005 Cr-Commit-Position: refs/heads/master@{#34297}
-