1. 17 Nov, 2016 1 commit
    • kozyatinskiy's avatar
      [inspector] introduced Script::TYPE_INSPECTOR · 6808ec1f
      kozyatinskiy authored
      Inspector uses this type for all internal scripts, e.g. injected-script-source.js. Scripts with new type are not reported by remote debugging protocol, frames from them are ignored.
      
      CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
      BUG=none
      R=yangguo@chromium.org,dgozman@chromium.org
      
      Review-Url: https://codereview.chromium.org/2499273003
      Cr-Commit-Position: refs/heads/master@{#41056}
      6808ec1f
  2. 15 Nov, 2016 1 commit
    • clemensh's avatar
      [wasm] Allocate a single script per wasm module · 32077e01
      clemensh authored
      Before, we allocated one script per function per instance, and each
      script referenced the wasm instance and the function index. Now we only
      allocate one script per compiled wasm module, so the script also only
      references this WasmCompiledModule, which causes changes to many interfaces.
      
      Instead of fixing the disassemble API only used via debug.js, I decided
      to drop it for now. Some later CL will reintroduce it via
      DebugInterface.
      
      BUG=v8:5530,chromium:659715
      R=yangguo@chromium.org, titzer@chromium.org
      CC=jgruber@chromium.org
      
      Review-Url: https://codereview.chromium.org/2493823003
      Cr-Commit-Position: refs/heads/master@{#41004}
      32077e01
  3. 11 Nov, 2016 1 commit
    • titzer's avatar
      [wasm] Move all heap-allocated WASM structures into wasm-objects.h. · fa9c25ce
      titzer authored
      This CL moves all heap-allocated WASM data structures, both ones
      that are bonafide JSObjects and ones that are FixedArrays only, into a
      consistent place with consistent layout. Note that not all accessors are complete, and I haven't fully spread the new static typing goodness
      to all places in the code.
      
      R=ahaas@chromium.org,rossberg@chromium.org
      CC=gdeepti@chromium.org,mtrofin@chromium.org,clemensh@chromium.org
      BUG=
      
      Review-Url: https://codereview.chromium.org/2490663002
      Cr-Commit-Position: refs/heads/master@{#40913}
      fa9c25ce
  4. 10 Nov, 2016 1 commit
    • mstarzinger's avatar
      [turbofan] Advance bytecode offset after lazy deopt. · 93c65952
      mstarzinger authored
      This changes {FrameState} nodes modeling "after" states to use bytecode
      offsets pointing to the deoptimizing bytecode. This is in sync with the
      normal execution, as the bytecode offset is advanced after operations
      complete in regular bytecode handlers.
      
      The change is necessary to ensure lazy deoptimized frames contain an
      accurate bytecode offset while they are on the stack. Such frames can be
      inspected by various stack walks. The continuation builtin will advance
      the bytecode offset upon return.
      
      R=jarin@chromium.org
      TEST=mjsunit/regress/regress-crbug-660379
      BUG=chromium:660379
      
      Review-Url: https://codereview.chromium.org/2487173002
      Cr-Commit-Position: refs/heads/master@{#40887}
      93c65952
  5. 04 Nov, 2016 1 commit
    • mstarzinger's avatar
      [compiler] Remove --ignition-preserve-bytecode flag. · 01219881
      mstarzinger authored
      This removes the deprecated flag in question which has been enabled by
      default a while ago. All components can by now deal with activations of
      a single function being mixed between Ignition and other compilers. The
      maintenance overhead to support a mode that clears bytecode is no longer
      warranted.
      
      R=rmcilroy@chromium.org
      BUG=v8:4280
      
      Review-Url: https://codereview.chromium.org/2475203003
      Cr-Commit-Position: refs/heads/master@{#40776}
      01219881
  6. 03 Nov, 2016 1 commit
  7. 27 Oct, 2016 1 commit
  8. 26 Oct, 2016 1 commit
  9. 24 Oct, 2016 1 commit
  10. 21 Oct, 2016 1 commit
  11. 20 Oct, 2016 2 commits
  12. 19 Oct, 2016 1 commit
  13. 13 Oct, 2016 2 commits
    • mythria's avatar
      [Interpreter] Print information about interpreted functions when tracing ics. · 6fa76d46
      mythria authored
      With --trace-ic flag, the function names and the source positions are
      not shown for interpreted functions. Interpreted functions have an extra
      frame built by bytecode handlers which has to be skipped to get the
      interpreted function's frame. Also the code offsets are computed differently
      for interpreted functions.
      
      BUG=v8:4280
      
      Review-Url: https://codereview.chromium.org/2405173007
      Cr-Commit-Position: refs/heads/master@{#40274}
      6fa76d46
    • clemensh's avatar
      [wasm] Stack inspection support for asm.js frames · e902b69d
      clemensh authored
      This CL fixes the debugger interface to provide correct (high-level)
      information for asm.js frames.
      It moves the computation of the source position from the FrameInspector
      to the individual StackFrame implementations, such that we can easily
      specualize it for certain frame types, and can potentially reuse this
      in other locations.
      
      Also, we are finalizing the setup of the wasm module earlier, before
      executing the start function. This is required for correct stack traces
      during the execution of the start function.
      
      R=titzer@chromium.org, yangguo@chromium.org
      BUG=v8:4203
      
      Review-Url: https://codereview.chromium.org/2413693003
      Cr-Commit-Position: refs/heads/master@{#40268}
      e902b69d
  14. 03 Oct, 2016 1 commit
    • mtrofin's avatar
      [wasm] cleanup wasm-module.cc · 55478da2
      mtrofin authored
      - Coalesced all anonymous namespaces into one, and moved it to the
      top of the file, to match elsewhere in the v8 codebase.
      - Deleted dead code.
      - Moved functions that turned out to be local to wasm-module.cc to
      the anonymous namespace.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2384183002
      Cr-Commit-Position: refs/heads/master@{#39936}
      55478da2
  15. 30 Sep, 2016 1 commit
  16. 29 Sep, 2016 2 commits
  17. 29 Aug, 2016 1 commit
    • mtrofin's avatar
      [wasm] Use weak reference for wasm deopt data. · b9eb9ee7
      mtrofin authored
      This unblocks moving off having to hold on to a compiled module
      template.
      
      Once we don't have the template, when we have a single instance, the
      instance and wasm module share the same compiled code. We will want
      to clear that code off instance-specific stuff, when the instance is
      unreferenced and should be GC-ed (stuff like the instance heap, for
      instance). However, the deopt data will maintain a strong reference,
      blocking the GC: the module object strongly references the compiled
      code, which strongly references the instance object through the deopt
      data.
      
      This change addresses that by making that last reference weak.
      
      BUG=v8:5316
      
      Review-Url: https://codereview.chromium.org/2284683005
      Cr-Commit-Position: refs/heads/master@{#38990}
      b9eb9ee7
  18. 18 Aug, 2016 1 commit
  19. 02 Aug, 2016 1 commit
  20. 01 Aug, 2016 1 commit
  21. 25 Jul, 2016 1 commit
  22. 11 Jul, 2016 1 commit
  23. 08 Jul, 2016 1 commit
  24. 04 Jul, 2016 1 commit
    • jgruber's avatar
      [builtins] Add receiver to builtin exit frames · f59a2335
      jgruber authored
      Stack trace generation requires access to the receiver; and while the
      receiver is already on the stack, we cannot determine its position
      during stack trace generation (it's stored in argv[0], and argc is only
      stored in a callee-saved register).
      
      This patch grants access to the receiver by pushing argc onto builtin
      exit frames as an extra argument. Compared to simply pushing the
      receiver, this requires an additional dereference during stack trace
      generation, but one fewer during builtin calls.
      
      BUG=v8:4815
      
      Review-Url: https://codereview.chromium.org/2106883003
      Cr-Commit-Position: refs/heads/master@{#37500}
      f59a2335
  25. 30 Jun, 2016 1 commit
    • jgruber's avatar
      [builtins] New frame type for exits to C++ builtins · 5febc27b
      jgruber authored
      Prior to this commit, calls to C++ builtins created standard exit
      frames, which are skipped when constructing JS stack traces. In order to
      show these calls on traces, we introduce a new builtin exit frame type.
      
      Builtin exit frames contain target and new.target on the stack and are
      not skipped during stack trace construction.
      
      BUG=v8:4815
      R=bmeurer@chromium.org, yangguo@chromium.org
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel;tryserver.v8:v8_linux_nosnap_dbg
      
      Committed: https://crrev.com/3c60c6b105f39344f93a8407f41534e5e60cf19a
      Review-Url: https://codereview.chromium.org/2090723005
      Cr-Original-Commit-Position: refs/heads/master@{#37384}
      Cr-Commit-Position: refs/heads/master@{#37416}
      5febc27b
  26. 29 Jun, 2016 4 commits
  27. 28 Jun, 2016 1 commit
    • alph's avatar
      Fix MSAN error on arm64 bot. · ca1dcc9c
      alph authored
      The main fix is to mark stack memory the SafeStackFrameIterator
      accesses as initialied.
      
      Drive-by: Make sure we bail out when the simulator is in the
      process of updating FP/SP registers.
      
      BUG=v8:5156
      
      Review-Url: https://codereview.chromium.org/2104763002
      Cr-Commit-Position: refs/heads/master@{#37315}
      ca1dcc9c
  28. 27 Jun, 2016 1 commit
  29. 17 Jun, 2016 1 commit
    • jgruber's avatar
      [builtins] Introduce a proper BUILTIN frame type. · f47b9e98
      jgruber authored
      This adds a new BUILTIN frame type, which supports variable number of
      arguments for builtins implemented in hand-written native code (we will
      extend this mechanism to TurboFan builtins at some point). Convert the
      Math.max and Math.min builtins to construct a BUILTIN frame if required.
      
      This does not yet work for C++ builtins, but that'll be the next step.
      
      R=bmeurer@chromium.org, jarin@chromium.org
      BUG=v8:4815
      LOG=n
      
      Review-Url: https://codereview.chromium.org/2069423002
      Cr-Commit-Position: refs/heads/master@{#37051}
      f47b9e98
  30. 08 Jun, 2016 1 commit
  31. 06 Jun, 2016 1 commit
  32. 19 May, 2016 2 commits
    • rmcilroy's avatar
      [Interpreter] Support compiling for baseline on return from interpreted function. · f241a61a
      rmcilroy authored
      We cannot tier up from interpreted to baseline code when there is an
      activation of the function on the stack. This significantly regresses
      the performance of recursive functions since they are unlikely to get
      tiered up.
      
      This CL adds the ability for a function to be marked for baseline
      compilation when it returns. To do this we patch the
      InterpreterEntryTrampoline return address to point to
      InterpreterMarkBaselineOnReturn, which leaves the
      interpreted frame and recompile the function for
      baseline.
      
      This improves the score of EarlyBoyer by ~8x for Ignition.
      
      BUG=v8:4280
      LOG=N
      
      Review-Url: https://codereview.chromium.org/1965343002
      Cr-Commit-Position: refs/heads/master@{#36360}
      f241a61a
    • clemensh's avatar
      [wasm] Differentiate unnamed and empty names · 3596cac8
      clemensh authored
      Empty function names are allowed and are output as such, unnamed
      functions or functions with no valid UTF-8 name are output as
      "<WASM UNNAMED>", while the CallSite object returns null as the
      function name.
      
      R=titzer@chromium.org, yangguo@chromium.org
      
      Review-Url: https://codereview.chromium.org/1970503004
      Cr-Commit-Position: refs/heads/master@{#36348}
      3596cac8
  33. 11 May, 2016 1 commit