1. 08 Mar, 2016 7 commits
    • mstarzinger's avatar
      [compiler] Remove support for concurrent OSR. · 26692242
      mstarzinger authored
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1773593002
      
      Cr-Commit-Position: refs/heads/master@{#34572}
      26692242
    • danno's avatar
      [runtime] Unify and simplify how frames are marked · 9dcd0857
      danno authored
      Before this CL, various code stubs used different techniques
      for marking their frames to enable stack-crawling and other
      access to data in the frame. All of them were based on a abuse
      of the "standard" frame representation, e.g. storing the a
      context pointer immediately below the frame's fp, and a
      function pointer after that. Although functional, this approach
      tends to make stubs and builtins do an awkward, unnecessary
      dance to appear like standard frames, even if they have
      nothing to do with JavaScript execution.
      
      This CL attempts to improve this by:
      
      * Ensuring that there are only two fundamentally different
        types of frames, a "standard" frame and a "typed" frame.
        Standard frames, as before, contain both a context and
        function pointer. Typed frames contain only a minimum
        of a smi marker in the position immediately below the fp
        where the context is in standard frames.
      * Only interpreted, full codegen, and optimized Crankshaft and
        TurboFan JavaScript frames use the "standard" format. All
        other frames use the type frame format with an explicit
        marker.
      * Typed frames can contain one or more values below the
        type marker. There is new magic macro machinery in
        frames.h that simplifies defining the offsets of these fields
        in typed frames.
      * A new flag in the CallDescriptor enables specifying whether
        a frame is a standard frame or a typed frame. Secondary
        register location spilling is now only enabled for standard
        frames.
      * A zillion places in the code have been updated to deal with
        the fact that most code stubs and internal frames use the
        typed frame format. This includes changes in the
        deoptimizer, debugger, and liveedit.
      * StandardFrameConstants::kMarkerOffset is deprecated,
        (CommonFrameConstants::kContextOrFrameTypeOffset
        and StandardFrameConstants::kFrameOffset are now used
        in its stead).
      
      LOG=N
      
      Review URL: https://codereview.chromium.org/1696043002
      
      Cr-Commit-Position: refs/heads/master@{#34571}
      9dcd0857
    • yangguo's avatar
      Revert of [interpreter, debugger] add some missing statement positions.... · 059c1636
      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}
      059c1636
    • yangguo's avatar
      [interpreter, debugger] add some missing statement positions. · 4a7722c9
      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}
      4a7722c9
    • v8-autoroll's avatar
      Update V8 DEPS. · 3293c486
      v8-autoroll authored
      Rolling v8/build/gyp to 61259d585ce99d9de8b35188cd0025bdbcb58411
      
      Rolling v8/tools/clang to 7f949627a42e2b8b229522ab74de5b1b6a1ced3e
      
      TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org
      
      Review URL: https://codereview.chromium.org/1768263003
      
      Cr-Commit-Position: refs/heads/master@{#34568}
      3293c486
    • caitpotter88's avatar
      [esnext] use map instance_descriptors() when possible in Object.values/entries() · cee0dca2
      caitpotter88 authored
      When possible (non-Proxy receiver, expecting only String-names), walk the instance_descriptors() array rather than performing [[OwnPropertyKeys]]. If the map changes during a call to an accessor property, resort to a slower property lookup.
      
      For now, the fast path is not taken if the object contains any element keys.
      
      Offers a measurable improvement over the existing version, in select situations.
      
      BUG=v8:4663
      LOG=N
      R=cbruni@chromium.org, verwaest@chromium.org, adamk@chromium.org
      
      Review URL: https://codereview.chromium.org/1751643003
      
      Cr-Commit-Position: refs/heads/master@{#34567}
      cee0dca2
    • ishell's avatar
      [turbofan] Further fixing ES6 tail call elimination in Turbofan. · 2aae579c
      ishell authored
      In case when F tail calls G we should also remove the potential arguments adaptor frame for F.
      
      This CL introduces two new machine instructions ArchTailCallCodeObjectFromJSFunction and ArchTailCallJSFunctionFromJSFunction which (unlike existing ArchTailCallCodeObject and ArchTailCallJSFunction) also drop arguments adaptor frame if it exists right before jumping to the target function.
      
      BUG=v8:4698
      LOG=N
      
      Review URL: https://codereview.chromium.org/1702423002
      
      Cr-Commit-Position: refs/heads/master@{#34566}
      2aae579c
  2. 07 Mar, 2016 33 commits