1. 22 Mar, 2016 1 commit
  2. 21 Mar, 2016 3 commits
    • adamk's avatar
      Remove runtime flags for Proxy and Reflect · 249bf75e
      adamk authored
      Both of them shipped in Chrome 49 without incident.
      
      Also move relevant tests from harmony/ to es6/.
      
      Review URL: https://codereview.chromium.org/1815773002
      
      Cr-Commit-Position: refs/heads/master@{#34964}
      249bf75e
    • oth's avatar
      [interpreter] Add support for scalable operands. · 48d082af
      oth authored
      This change introduces wide prefix bytecodes to support wide (16-bit)
      and extra-wide (32-bit) operands. It retires the previous
      wide-bytecodes and reduces the number of operand types.
      
      Operands are now either scalable or fixed size. Scalable operands
      increase in width when a bytecode is prefixed with wide or extra-wide.
      
      The bytecode handler table is extended to 256*3 entries. The
      first 256 entries are used for bytecodes with 8-bit operands,
      the second 256 entries are used for bytecodes with operands that
      scale to 16-bits, and the third group of 256 entries are used for
      bytecodes with operands that scale to 32-bits.
      
      LOG=N
      BUG=v8:4747,v8:4280
      
      Review URL: https://codereview.chromium.org/1783483002
      
      Cr-Commit-Position: refs/heads/master@{#34955}
      48d082af
    • jkummerow's avatar
      [crankshaft] Delete unused Hydrogen-BCH code · 6703cce1
      jkummerow authored
      Bounds check hoisting was known to be buggy and has never been turned on.
      Since Crankshaft is deprecated, nobody is going to spend time fixing it,
      so let's just get rid of it.
      
      BUG=v8:4155,v8:4849
      LOG=n
      R=bmeurer@chromium.org
      
      Review URL: https://codereview.chromium.org/1823623002
      
      Cr-Commit-Position: refs/heads/master@{#34948}
      6703cce1
  3. 17 Mar, 2016 4 commits
  4. 10 Mar, 2016 2 commits
  5. 08 Mar, 2016 1 commit
  6. 07 Mar, 2016 7 commits
  7. 04 Mar, 2016 1 commit
  8. 02 Mar, 2016 1 commit
  9. 01 Mar, 2016 2 commits
  10. 29 Feb, 2016 1 commit
  11. 26 Feb, 2016 1 commit
    • joransiu's avatar
      S390: Initial impl of S390 asm, masm, code-stubs,... · 23cf6592
      joransiu authored
      Initial commit with the bulk of the src/s390/* changes
      along with associated changes to the build toolchain for
      the new files.
      
      A minor update to V8PRIuPTR definition for Mac OS X
      affecting 32-bit S390 sim compilations.
      
      R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,jyan@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1725243004
      
      Cr-Commit-Position: refs/heads/master@{#34331}
      23cf6592
  12. 25 Feb, 2016 1 commit
  13. 24 Feb, 2016 1 commit
    • ulan's avatar
      Revert of Replace slots buffer with remembered set. (patchset #14 id:250001 of... · 9146bc5e
      ulan authored
      Revert of Replace slots buffer with remembered set. (patchset #14 id:250001 of https://codereview.chromium.org/1703823002/ )
      
      Reason for revert:
      Revert because of canary crashes: crbug.com/589413
      
      Original issue's description:
      > Replace slots buffer with remembered set.
      >
      > Slots pointing to evacuation candidates are now recorded in the new RememberedSet<OLD_TO_OLD>.
      >
      > The remembered set is extended to support typed slots.
      >
      > During parallel evacuation all migration slots are recorded in local slots buffers.
      > After evacuation all local slots are added to the remembered set.
      >
      > BUG=chromium:578883
      > LOG=NO
      >
      > Committed: https://crrev.com/2285a99ef6f7d52f4f0c4d88a7db4224443ee152
      > Cr-Commit-Position: refs/heads/master@{#34212}
      
      TBR=jochen@chromium.org,hpayer@chromium.org,mlippautz@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=chromium:578883
      
      Review URL: https://codereview.chromium.org/1725073003
      
      Cr-Commit-Position: refs/heads/master@{#34238}
      9146bc5e
  14. 23 Feb, 2016 1 commit
    • ulan's avatar
      Replace slots buffer with remembered set. · 2285a99e
      ulan authored
      Slots pointing to evacuation candidates are now recorded in the new RememberedSet<OLD_TO_OLD>.
      
      The remembered set is extended to support typed slots.
      
      During parallel evacuation all migration slots are recorded in local slots buffers.
      After evacuation all local slots are added to the remembered set.
      
      BUG=chromium:578883
      LOG=NO
      
      Review URL: https://codereview.chromium.org/1703823002
      
      Cr-Commit-Position: refs/heads/master@{#34212}
      2285a99e
  15. 22 Feb, 2016 1 commit
    • littledan's avatar
      Remove Reflect.enumerate · 0b53b7d3
      littledan authored
      The Proxy enumerate trap and Reflect.enumerate are removed from the
      ES2016 draft specification. This patch removes the Reflect.enumerate
      function, and a follow-on patch will be responsible for the Proxy
      trap changes.
      
      R=adamk
      LOG=Y
      BUG=v8:4768
      
      Review URL: https://codereview.chromium.org/1721453002
      
      Cr-Commit-Position: refs/heads/master@{#34196}
      0b53b7d3
  16. 19 Feb, 2016 1 commit
    • bmeurer's avatar
      [turbofan] Remove the JSContextRelaxation reducer. · 8a7186b8
      bmeurer authored
      This reducer doesn't really add value, because:
      
       (a) it is only concerned with JSCallFunction and JSToNumber, but when
           we get to it, all JSCallFunction nodes will have been replaced by
           Call nodes, and in the not so far future, we will also have
           replaced almost all JSToNumber nodes with better code,
       (b) and the reducer tries to be smart and use one of the outermost
           contexts, but that might not be beneficial always; actually it
           might even create longer live ranges and lead to more spilling
           in some cases.
      
      But most importantly, the JSContextRelaxation currently blocks inlining
      based on SharedFunctionInfo, because it requires the inliner to check
      the native context, which in turn requires JSFunction knowledge. So I'm
      removing this reducer for now to unblock the more important inliner
      changes.
      
      R=jarin@chromium.org
      
      Review URL: https://codereview.chromium.org/1715633002
      
      Cr-Commit-Position: refs/heads/master@{#34139}
      8a7186b8
  17. 16 Feb, 2016 2 commits
    • ulan's avatar
      Add a generic remembered set class. · 4fdc19ae
      ulan authored
      This new class provides a unified interface for recording and iterating slots in store and slots buffers:
      
      RememberedSet<OLD_TO_NEW>::Insert(page, slot);
      RememberedSet<OLD_TO_OLD>::Insert(page, slot);
      
      RememberedSet<OLD_TO_NEW>::Iterate(heap, callback);
      RememberedSet<OLD_TO_OLD>::Iterate(heap, callback);
      
      After this change the store buffer is responsible only for collecting slots from the generated code.
      
      Subsequent CLs will remove the slots buffer.
      
      BUG=chromium:578883
      LOG=NO
      
      Review URL: https://codereview.chromium.org/1683653002
      
      Cr-Commit-Position: refs/heads/master@{#34031}
      4fdc19ae
    • jarin's avatar
      Move FieldType to separate h/cc files. · 75cdb913
      jarin authored
      Review URL: https://codereview.chromium.org/1700923002
      
      Cr-Commit-Position: refs/heads/master@{#34026}
      75cdb913
  18. 10 Feb, 2016 2 commits
    • rmcilroy's avatar
      [Interpreter] Make InterpreterAssembler a subclass of CodeStubAssembler. · d1c28849
      rmcilroy authored
      Moves InterpreterAssembler out of the compiler directory and into the
      interpreter directory. Makes InterpreterAssembler as subclass of
      CodeStubAssembler.
      
      As part of this change, the special bytecode dispatch linkage type
      is removed and instead we use a InterfaceDispatchDescriptor and
      a normal CodeStub linkage type.
      
      Removes a bunch of duplicated logic in InterpreterAssembler and
      instead uses the CodeStubAssembler logic. Refactors Interpreter
      with these changes.
      
      Modifies CodeStubAssembler to add the extra operations required
      by the Interpreter (extra call types, raw memory access and some extra
      binary ops). Also adds the ability for subclasses to add extra
      prologue and epilogue operations around calls, which is required
      for the Interpreter.
      
      BUG=v8:4280
      LOG=N
      
      Review URL: https://codereview.chromium.org/1673333004
      
      Cr-Commit-Position: refs/heads/master@{#33873}
      d1c28849
    • yangguo's avatar
      [json parser] add position to error message. · 35b6ca25
      yangguo authored
      R=jochen@chromium.org, verwaest@chromium.org
      BUG=chromium:585724
      LOG=N
      
      Review URL: https://codereview.chromium.org/1681513002
      
      Cr-Commit-Position: refs/heads/master@{#33864}
      35b6ca25
  19. 09 Feb, 2016 1 commit
  20. 08 Feb, 2016 2 commits
    • bmeurer's avatar
      [turbofan] Introduce JSCreateLowering for optimizing JSCreate nodes. · 07e9921f
      bmeurer authored
      This moves the JSCreate related functionality from JSTypedLowering into
      a dedicated JSCreateLowering reducer. This is in preparation of landing
      the support for optimized literals in TurboFan, which would blow up
      JSTypedLowering quite seriously otherwise.
      
      R=mstarzinger@chromium.org
      
      Review URL: https://codereview.chromium.org/1678833002
      
      Cr-Commit-Position: refs/heads/master@{#33813}
      07e9921f
    • ulan's avatar
      New page local store buffer. · bb883395
      ulan authored
      This replaces the global remembered set with per-page remembered sets.
      
      Each page in the old space, map space, and large object space keeps track of
      the set of slots in the page pointing to the new space.
      
      The data structure for storing slot sets is a two-level bitmap, which allows
      us to remove the store buffer overflow and SCAN_ON_SCAVENGE logic.
      
      Design doc: https://goo.gl/sMKCf7
      
      BUG=chromium:578883
      LOG=NO
      
      Review URL: https://codereview.chromium.org/1608583002
      
      Cr-Commit-Position: refs/heads/master@{#33806}
      bb883395
  21. 04 Feb, 2016 3 commits
  22. 02 Feb, 2016 1 commit
    • jarin's avatar
      Remove the template magic from types.(h|cc), remove types-inl.h. · ef35f11c
      jarin authored
      This CL removes the Config templatization from the types. It is not
      necessary anymore, after the HeapTypes have been removed.
      
      The CL also changes the type hierarchy - the specific type kinds are
      not inner classes of the Type class and they do not inherit from Type.
      This is partly because it seems impossible to make this work without
      templates. Instead, a new TypeBase class is introduced and all the
      structural (i.e., non-bitset) types inherit from it.
      
      The bitset type still requires the bit-munging hack and some nasty
      reinterpret-casts to pretend bitsets are of type Type*. Additionally,
      there is now the same hack for TypeBase - all pointers to the sub-types
      of TypeBase are reinterpret-casted to Type*. This is to keep the type
      constructors in inline method definitions (although it is unclear how
      much that actually buys us).
      
      In future, we would like to move to a model where we encapsulate Type*
      into a class (or possibly use Type where we used to use Type*). This
      would loosen the coupling between bitset size and pointer size, and
      eventually we would be able to have more bits.
      
      TBR=bradnelson@chromium.org
      
      Review URL: https://codereview.chromium.org/1655833002
      
      Cr-Commit-Position: refs/heads/master@{#33656}
      ef35f11c