1. 07 Jan, 2016 1 commit
  2. 22 Dec, 2015 3 commits
    • littledan's avatar
      Reland of Add web compat workarounds for ES2015 RegExp semantics (patchset #3... · 424ef009
      littledan authored
      Reland of Add web compat workarounds for ES2015 RegExp semantics (patchset #3 id:40001 of https://codereview.chromium.org/1543723002/ )
      
      Unexpectedly, websites depend on doing feature testing with
      RegExp.prototype.sticky and browser testing with RegExp.prototype.toString().
      ES2015 newly throws exceptions for both of these. In order to enable shipping
      new ES2015 semantics, this patch puts in narrow workarounds for those two
      cases, keeping their old behavior. UseCounters are added for how often
      those particular cases come up, so we can see if it can be deprecated.
      
      This reland replaces problematic legacy const usage with var, to
      avoid issues with nosnap builds.
      
      R=yangguo
      CC=bmeurer
      BUG=v8:4637,v8:4617
      LOG=Y
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1545633002
      
      Cr-Commit-Position: refs/heads/master@{#33002}
      424ef009
    • bmeurer's avatar
      Revert of Add web compat workarounds for ES2015 RegExp semantics (patchset #3... · 08a1d1a2
      bmeurer authored
      Revert of Add web compat workarounds for ES2015 RegExp semantics (patchset #3 id:40001 of https://codereview.chromium.org/1543723002/ )
      
      Reason for revert:
      Breaks nosnap: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap/builds/5883
      
      Original issue's description:
      > Add web compat workarounds for ES2015 RegExp semantics
      >
      > Unexpectedly, websites depend on doing feature testing with
      > RegExp.prototype.sticky and browser testing with RegExp.prototype.toString().
      > ES2015 newly throws exceptions for both of these. In order to enable shipping
      > new ES2015 semantics, this patch puts in narrow workarounds for those two
      > cases, keeping their old behavior. UseCounters are added for how often
      > those particular cases come up, so we can see if it can be deprecated.
      >
      > R=yangguo
      > BUG=v8:4637,v8:4617
      > LOG=Y
      > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      >
      > Committed: https://crrev.com/98f819c3e0c92d54a306cdacadda73cf96d21b52
      > Cr-Commit-Position: refs/heads/master@{#32997}
      
      TBR=yangguo@google.com,yangguo@chromium.org,littledan@chromium.org
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4637,v8:4617
      
      Review URL: https://codereview.chromium.org/1546493003
      
      Cr-Commit-Position: refs/heads/master@{#32999}
      08a1d1a2
    • littledan's avatar
      Add web compat workarounds for ES2015 RegExp semantics · 98f819c3
      littledan authored
      Unexpectedly, websites depend on doing feature testing with
      RegExp.prototype.sticky and browser testing with RegExp.prototype.toString().
      ES2015 newly throws exceptions for both of these. In order to enable shipping
      new ES2015 semantics, this patch puts in narrow workarounds for those two
      cases, keeping their old behavior. UseCounters are added for how often
      those particular cases come up, so we can see if it can be deprecated.
      
      R=yangguo
      BUG=v8:4637,v8:4617
      LOG=Y
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1543723002
      
      Cr-Commit-Position: refs/heads/master@{#32997}
      98f819c3
  3. 17 Dec, 2015 1 commit
  4. 14 Dec, 2015 1 commit
  5. 24 Nov, 2015 1 commit
  6. 20 Nov, 2015 1 commit
  7. 19 Nov, 2015 1 commit
  8. 10 Nov, 2015 2 commits
  9. 09 Nov, 2015 1 commit
    • caitpotter88's avatar
      [regexp] remove no-op RegExp.multiline accessor and alias · e63248f6
      caitpotter88 authored
      Remove some non-standard code that doesn't do anything anyways.
      
      While FireFox uses this to set the default value for the multiline flag,
      it is nonstandard and slated for removal. The matching behaviour has
      never been implemented in either JSC or V8, so there is little
      web-compat risk.
      
      The only possible risk could be someone depending on the ToBoolean()
      behaviour of the flag, but this seems unlikely.
      
      BUG=v8:3870
      LOG=N
      R=adamk@chromium.org, littledan@chromium.org, yangguo@chromium.org
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1417733012
      
      Cr-Commit-Position: refs/heads/master@{#31882}
      e63248f6
  10. 05 Nov, 2015 4 commits
  11. 04 Nov, 2015 8 commits
  12. 03 Nov, 2015 3 commits
  13. 30 Oct, 2015 2 commits
  14. 27 Oct, 2015 1 commit
    • yangguo's avatar
      RegExp: remove last match info override. · 85e085b7
      yangguo authored
      With ES6 21.2.5.8, step 13, we no longer have to keep up the illusion
      that matching and calling replace function is interleaved. This is
      observable through unspec'ed static properties such as RegExp.$1.
      
      Last match info not working yet.
      
      R=littledan@chromium.org
      
      Review URL: https://codereview.chromium.org/1418703003
      
      Cr-Commit-Position: refs/heads/master@{#31593}
      85e085b7
  15. 22 Oct, 2015 1 commit
  16. 16 Oct, 2015 1 commit
  17. 15 Oct, 2015 1 commit
  18. 13 Oct, 2015 1 commit
    • mstarzinger's avatar
      Move builtin JavaScript sources into own directory. · e5320d8a
      mstarzinger authored
      This moves JavaScript source files that are bundled with V8 into a
      separate directory. The goal is to improve code readability and also
      being able to formalize ideal reviewers by subsequently adding the
      OWNERS file. These files almost exclusively contain implementations
      of methods fully specified by ES6.
      
      Note that files in the "debug" directory as well as the "d8.js" file
      aren't affected by this change.
      
      R=rossberg@chromium.org
      
      Review URL: https://codereview.chromium.org/1398733002
      
      Cr-Commit-Position: refs/heads/master@{#31230}
      e5320d8a
  19. 06 Oct, 2015 1 commit
  20. 01 Oct, 2015 1 commit
    • bmeurer's avatar
      [es6] Fix missing bits for full @@toPrimitive support. · 2a0759d3
      bmeurer authored
      Introduce %_ToNumber intrinsic, which just calls to the existing
      ToNumberStub, and remove all uses of our custom JavaScript plus
      intrinsics based ToNumber and friends.
      
      Also replace the TO_NUMBER_INLINE macro with TO_NUMBER,
      which is currently a wrapper for %_ToNumber. Newly written JS
      code should use TO_NUMBER (similar to TO_STRING, TO_INT32,
      and friends).
      
      Also finally remove the DefaultString/DefaultNumber builtins, which
      are basically the ES5 version of ToPrimitive. Now all code uses the
      ES6 version, which is implemented in Object::ToPrimitive and
      JSReceiver::ToPrimitive in C++.
      
      CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_layout_dbg,v8_linux_nosnap_dbg
      R=jarin@chromium.org
      BUG=v8:4307
      LOG=n
      
      Review URL: https://codereview.chromium.org/1384443002
      
      Cr-Commit-Position: refs/heads/master@{#31054}
      2a0759d3
  21. 23 Sep, 2015 1 commit
    • bmeurer's avatar
      [runtime] Replace %to_string_fun with %_ToString. · 7a7b692b
      bmeurer authored
      Introduce a new macro TO_STRING that maps to %_ToString and use that
      instead of calling into any of the ToString/NonStringToString JavaScript
      builtins. Also remove the TO_STRING_INLINE macro, which is basically
      obsolete with %_ToString. We still have a few uses of ToString left (via
      the utils export mechanism), where we need to investigate whether we
      will tank badly if we replace them with TO_STRING as well.
      
      CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_layout_dbg,v8_linux_nosnap_dbg
      R=yangguo@chromium.org
      BUG=v8:4307
      LOG=n
      
      Review URL: https://codereview.chromium.org/1323543002
      
      Cr-Commit-Position: refs/heads/master@{#30895}
      7a7b692b
  22. 28 Aug, 2015 1 commit
  23. 26 Aug, 2015 1 commit
  24. 19 Aug, 2015 1 commit
    • yangguo's avatar
      Native context: debug.js does not load from js builtins object anymore. · eb8c0928
      yangguo authored
      This mainly changes how we share ToBoolean, ToNumber and ToString between
      native scripts. Instead of putting them on the js builtins object, we now
      explicitly export and import those functions.
      
      I also had to change the import/export mechanism slightly. Previously,
      exports and imports are hooked up after all native scripts have been
      executed. This means that imported functions cannot be called at the time
      the native script is executed.
      
      However, since ToBoolean (and also e.g. ObjectDefineProperties) is called
      in v8natives.js, I changed the mechanism so that exports from previous
      native scripts (runtime.js for ToBoolean) is imported immediately and can
      be called.
      
      R=cbruni@chromium.org
      
      Review URL: https://codereview.chromium.org/1302533002
      
      Cr-Commit-Position: refs/heads/master@{#30244}
      eb8c0928