1. 03 Aug, 2020 1 commit
  2. 08 Jul, 2019 1 commit
  3. 03 Jul, 2019 2 commits
  4. 28 Jun, 2019 2 commits
  5. 19 Feb, 2018 1 commit
  6. 12 Feb, 2018 1 commit
    • Caitlin Potter's avatar
      [esnext] implement spec change to TaggedTemplate callsite caching · d3ca0d00
      Caitlin Potter authored
      Implements the change outlined in https://github.com/tc39/ecma262/pull/890,
      which has been ratified and pulled into the specification. In particular,
      template callsite objects are no longer kept in a global, eternal Map, but
      are instead associated with their callsite, which can be collected. This
      prevents a memory leak incurred by TaggedTemplate calls.
      
      Changes, summarized:
      
          - Remove the TemplateMap and TemplateMapShape objects, instead caching
            template objects in the feedback vector.
          - Remove the `hash` member of TemplateObjectDescriptor, and the Equals
            method (used by TemplateMap)
          - Add a new FeedbackSlotKind (kTemplateObject), which behaves similarly
            to FeedbackSlotKind::kLiteral, but prevents eval caching. This ensures
            that a new feedback vector is always created for eval() containing tagged
            templates, even when the CompilationCache is used.
          - GetTemplateObject bytecode now takes a feedback index, and only calls
            into the runtime if the feedback is Smi::kZero (uninitialized).
      
      BUG=v8:3230, v8:2891
      R=littledan@chromium.org, yangguo@chromium.org, bmeurer@chromium.org,
      rmcilroy@chromium.org
      
      Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
      Change-Id: I7827bc148d3d93e2b056ebf63dd624da196ad423
      Reviewed-on: https://chromium-review.googlesource.com/624564
      Commit-Queue: Caitlin Potter <caitp@igalia.com>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#51248}
      d3ca0d00
  7. 28 Nov, 2017 1 commit
  8. 13 Oct, 2017 1 commit
  9. 24 Aug, 2017 1 commit
  10. 21 Jun, 2017 1 commit
    • bakkot's avatar
      Reland "[parser] Forbid \08 in strict strings" · 76078e14
      bakkot authored
      (Reland: NeedsManualRebaseline'd newly-fixed layout test in Chromium.)
      
      This was never legal; the spec only allows '\0' in strict-mode strings
      or templates when not followed by a decimal digit. Previously we were
      only enforcing that it not be followed by an _octal_ digit.
      
      This was already fixed for numeric literals, but not for escape
      sequences in strings.
      
      BUG=v8:6504
      
      Review-Url: https://codereview.chromium.org/2948903002
      Cr-Commit-Position: refs/heads/master@{#46106}
      76078e14
  11. 20 Jun, 2017 2 commits
  12. 12 Jan, 2016 1 commit
    • adamk's avatar
      Stop treating scopes containing template strings tagged with 'eval' specially · f5828cb4
      adamk authored
      There's no need to mark these as possibly-direct-eval, since all such an
      eval-tagged string will ever get passed is the array of string parts, which
      will be immediately returns (since it's not a string). It will
      never do a lookup in the current scope, nor (in sloppy mode) introduce
      new declarations.
      
      This patch is not intended to change behavior, but I've added tests that
      demonstrate the stuff explained in the preceding paragraph.
      
      Review URL: https://codereview.chromium.org/1580463003
      
      Cr-Commit-Position: refs/heads/master@{#33245}
      f5828cb4
  13. 05 Aug, 2015 1 commit
  14. 16 Jun, 2015 1 commit
  15. 01 Apr, 2015 1 commit
    • mike's avatar
      Re-write duplicated assertions · 3badfdcd
      mike authored
      The modified assertions targeted the property descriptor for the
      template object's first "cooked" value. The code immediately preceeding
      these statements asserts these values.
      
      Update the assertions to instead target the property descriptor for the
      template object's first "raw" value (which are otherwise untested).
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1049523003
      
      Cr-Commit-Position: refs/heads/master@{#27566}
      3badfdcd
  16. 24 Mar, 2015 1 commit
  17. 23 Mar, 2015 1 commit
  18. 12 Mar, 2015 1 commit
  19. 12 Jan, 2015 1 commit
  20. 18 Dec, 2014 2 commits
  21. 04 Dec, 2014 1 commit
  22. 03 Dec, 2014 1 commit
  23. 26 Nov, 2014 1 commit
  24. 20 Nov, 2014 1 commit
  25. 19 Nov, 2014 1 commit
  26. 14 Nov, 2014 1 commit