1. 23 Oct, 2017 1 commit
  2. 19 Oct, 2017 1 commit
    • Adithya Srinivasan's avatar
      Add JSSpecialApiObjectType to fast path · f65251be
      Adithya Srinivasan authored
      HTMLCollection and NodeList have InstanceType
      JS_SPECIAL_API_OBJECT_TYPE, and therefore always run the slow case
      of GetAlignedPropertyFromInternalField. This slows down the performance
      of indexedPropertyGetter for both types, which are very commonly used
      in websites.
      
      Bug: 
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I36bd2cd7d9bbc19149e15174f6868b8a1f1658c8
      Reviewed-on: https://chromium-review.googlesource.com/726529Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Commit-Queue: Adithya Srinivasan <adithyas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48760}
      f65251be
  3. 18 Oct, 2017 1 commit
  4. 13 Oct, 2017 1 commit
  5. 12 Oct, 2017 1 commit
  6. 11 Oct, 2017 2 commits
    • Jan Krems's avatar
      Reland "[modules] Implement import.meta proposal" · 1c552999
      Jan Krems authored
      This is a reland of ed6f00fb
      Original change's description:
      > [modules] Implement import.meta proposal
      > 
      > Rewrites references to import.meta to a new GetImportMetaObject runtime
      > call. Embedders can define a callback for creating the meta object using
      > v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been
      > provided, an empty object with null prototype is created.
      > 
      > This adds an example implementation to d8 that sets meta.url.
      > 
      > Bug: v8:6693
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d
      > Reviewed-on: https://chromium-review.googlesource.com/707902
      > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      > Reviewed-by: Adam Klein <adamk@chromium.org>
      > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48433}
      
      TBR=adamk@chromium.org
      
      Bug: v8:6693
      Change-Id: Ie2d746ad996a56ed6ff50b832f320fe44e02f231
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/712834Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48468}
      1c552999
    • Sathya Gunasekaran's avatar
      Revert "[modules] Implement import.meta proposal" · a5565227
      Sathya Gunasekaran authored
      This reverts commit ed6f00fb.
      
      Reason for revert: tree is broken
      
      NOTRY=true
      NOTREECHECKS=true
      
      Original change's description:
      > [modules] Implement import.meta proposal
      > 
      > Rewrites references to import.meta to a new GetImportMetaObject runtime
      > call. Embedders can define a callback for creating the meta object using
      > v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been
      > provided, an empty object with null prototype is created.
      > 
      > This adds an example implementation to d8 that sets meta.url.
      > 
      > Bug: v8:6693
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d
      > Reviewed-on: https://chromium-review.googlesource.com/707902
      > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      > Reviewed-by: Adam Klein <adamk@chromium.org>
      > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48433}
      
      TBR=adamk@chromium.org,gsathya@chromium.org,jan.krems@groupon.com
      
      Change-Id: I908a508d5db84cc8ae60d4fd4a0446bb570c1492
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:6693
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/710760Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48434}
      a5565227
  7. 10 Oct, 2017 1 commit
    • Jan Krems's avatar
      [modules] Implement import.meta proposal · ed6f00fb
      Jan Krems authored
      Rewrites references to import.meta to a new GetImportMetaObject runtime
      call. Embedders can define a callback for creating the meta object using
      v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been
      provided, an empty object with null prototype is created.
      
      This adds an example implementation to d8 that sets meta.url.
      
      Bug: v8:6693
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d
      Reviewed-on: https://chromium-review.googlesource.com/707902
      Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48433}
      ed6f00fb
  8. 05 Oct, 2017 1 commit
  9. 02 Oct, 2017 1 commit
    • Mathias Bynens's avatar
      [parser] Add use counter for U+2028 & U+2029 · d3c98121
      Mathias Bynens authored
      The context is the following proposal to make JSON a subset of
      JavaScript: https://github.com/tc39/proposal-json-superset
      
      There’s interest in performing a side investigation to answer the
      question of what would happen if we stopped treating U+2028 and U+2029
      as `LineTerminator`s *entirely*. (Note that this is separate from the
      proposal, which just changes how these characters are handled in
      ECMAScript strings.) This is technically a breaking change, and IMHO it
      would be wonderful if we could get away with it, but no one really has
      any data on whether or not we could. Adding this use counter lets us get
      that data.
      
      BUG=v8:6827
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Ia22e8db1634df4d3f965bec8e1cfa11cc7b5e9aa
      Reviewed-on: https://chromium-review.googlesource.com/693155
      Commit-Queue: Mathias Bynens <mathias@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48260}
      d3c98121
  10. 26 Sep, 2017 1 commit
    • Yang Guo's avatar
      [snapshot] add kProduceExhaustiveCodeCache option. · 7f9de3dc
      Yang Guo authored
      - Add kProduceExhaustiveCodeCache to v8::ScriptCompiler::CompileOptions
        to request eager compilation to add as much as possible to the code
        cache for the script.
      - Repurpose ParseInfo::kLazy flag.
      - Remove ParseInfo::kDebug flag.
      - Remove --serialize-toplevel as it has become obsolete.
      
      R=marja@chromium.org
      
      Bug: chromium:768705
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Ife14f7a1d1c02e525f0b9dbfd2452013d67c7167
      Reviewed-on: https://chromium-review.googlesource.com/684019
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48160}
      7f9de3dc
  11. 15 Sep, 2017 2 commits
  12. 11 Sep, 2017 2 commits
  13. 08 Sep, 2017 2 commits
  14. 06 Sep, 2017 1 commit
  15. 05 Sep, 2017 1 commit
    • Franziska Hinkelmann's avatar
      [api] Use query interceptor in Object.keys(). · 43bb2778
      Franziska Hinkelmann authored
      The V8 API provides interceptors. They are not part of the
      EcmaScript specification. But their behavior should be consistent.
      For example, when an EnumeratorInterceptor is defined, Object.keys(),
      Object.entries(), and Object.values() should all have the
      same number of entries.
      
      This CL creates consistent behavior among these
      functions. If a QueryCallback is present, it is used to
      filter the result from the EnumeratorCallback for
      enumerable properties.
      
      Bug: v8:6627
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I4f4271ddeb99a5e85918148c5033923c149b9468
      Reviewed-on: https://chromium-review.googlesource.com/649786Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Franziska Hinkelmann <franzih@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47831}
      43bb2778
  16. 31 Aug, 2017 3 commits
  17. 30 Aug, 2017 1 commit
  18. 29 Aug, 2017 2 commits
  19. 28 Aug, 2017 2 commits
  20. 23 Aug, 2017 1 commit
  21. 22 Aug, 2017 2 commits
  22. 18 Aug, 2017 1 commit
    • Franziska Hinkelmann's avatar
      [api] Use query interceptor in Object.keys(). · b6059a67
      Franziska Hinkelmann authored
      The V8 API provides interceptors. They are not part of the
      EcmaScript specification. But their behavior should be consistent.
      For example, when an EnumeratorInterceptor is defined, Object.keys(),
      Object.entries(), and Object.values() should all have the
      same number of entries.
      
      This CL creates consistent behavior among these
      functions. If a QueryCallback is present, it is used to
      filter the result from the EnumeratorCallback for
      enumerable properties.
      
      Bug: v8:6627
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Ie51e69bb77099d9fafc4b1ea02671eced610edba
      Reviewed-on: https://chromium-review.googlesource.com/609068Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Franziska Hinkelmann <franzih@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47442}
      b6059a67
  23. 16 Aug, 2017 1 commit
  24. 10 Aug, 2017 3 commits
  25. 09 Aug, 2017 1 commit
  26. 04 Aug, 2017 1 commit
    • Adam Klein's avatar
      [parsing] Add a UseCounter for labeled expression statements · 946f78a0
      Adam Klein authored
      This was suggested by bmeurer after running into the confusing
      example of:
      
        x => {x:x}
      
      which might appear to be an arrow function that returns an object
      literal containing its argument, but instead is an arrow function
      that does nothing.
      
      While it's unclear whether the language would change to make this
      probable programmer error an actual syntax error, we can at least
      gather some data on the question of whether we see any such code
      in the wild.
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I08202039ecf7a7a4c71ad95ecd839436b4ec2af8
      Reviewed-on: https://chromium-review.googlesource.com/600888
      Commit-Queue: Adam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47171}
      946f78a0
  27. 02 Aug, 2017 2 commits
  28. 01 Aug, 2017 1 commit