1. 30 Aug, 2017 1 commit
  2. 21 Aug, 2017 1 commit
  3. 09 Aug, 2017 1 commit
    • Adam Klein's avatar
      [scopes] Clarify and narrow when scopes care about an eval() call · 1c9de0b2
      Adam Klein authored
      There are two reasons for Scopes to need information about eval calls
      inside them:
      
        - Eval in a scope, or any of its inner scopes, turns off a bunch of
          scope analysis optimizations (e.g., all variables have to be treated
          as "used" and context-allocated).
        - Eval in a sloppy declaration scope means allows runtime addition
          of var declarations.
      
      This patch aims to make the code better-reflect this reality.
      It's meant as a pure cleanup, with no expected change in behavior.
      
      Change-Id: I744c5051bb7a90b11420930e9596e5d6c35eb440
      Reviewed-on: https://chromium-review.googlesource.com/602848
      Commit-Queue: Adam Klein <adamk@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47257}
      1c9de0b2
  4. 10 Jul, 2017 1 commit
  5. 26 Jun, 2017 1 commit
  6. 21 Jun, 2017 1 commit
  7. 15 Jun, 2017 1 commit
  8. 22 May, 2017 1 commit
  9. 16 Jan, 2017 1 commit
  10. 03 Jan, 2017 1 commit
  11. 20 Dec, 2016 1 commit
  12. 09 Dec, 2016 1 commit
  13. 30 Nov, 2016 1 commit
  14. 07 Nov, 2016 1 commit
  15. 04 Nov, 2016 2 commits
  16. 03 Nov, 2016 1 commit
    • verwaest's avatar
      Turn Scope::locals_ into a ThreadedList · 4fa2ebcb
      verwaest authored
      This turns the ZoneList with minimum 6 words overhead into a linked list through variables, using 2 words for the empty list. Additionally the average number of pointers per entry goes down to the optimal 1 per variable that's in a list.
      
      This does introduce 1 pointer unnecessary overhead for dynamic variables. If that becomes a problem we could distinguish between variables in lists and variables not in lists. We can distinguish them at construction-time.
      
      BUG=v8:5209
      
      Review-Url: https://codereview.chromium.org/2475433002
      Cr-Commit-Position: refs/heads/master@{#40714}
      4fa2ebcb
  17. 26 Oct, 2016 2 commits
  18. 25 Oct, 2016 3 commits
  19. 07 Oct, 2016 3 commits
  20. 23 Sep, 2016 1 commit
  21. 21 Sep, 2016 1 commit
  22. 20 Sep, 2016 2 commits
  23. 19 Sep, 2016 1 commit
    • neis's avatar
      [modules] Explicitly keep track of module requests. · c5785bfb
      neis authored
      We must keep track of the exact order in which modules are requested.
      To do so, maintain a map from module specifiers to position while
      parsing (in ModuleDescriptor). Descriptor entries now refer to that
      position rather than the string.  When generating the ModuleInfo, turn
      this map into an array of specifiers. We don't need the map anymore
      later on, so we do not reconstruct it when deserializing again.
      
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2353633002
      Cr-Commit-Position: refs/heads/master@{#39519}
      c5785bfb
  24. 14 Sep, 2016 1 commit
  25. 12 Sep, 2016 4 commits
  26. 09 Sep, 2016 1 commit
  27. 07 Sep, 2016 1 commit
    • jochen's avatar
      Chain ScopeInfos together · ce3f46b1
      jochen authored
      This will allow getting the entire scope chain from a SharedFunctionInfo
      which in turn will allow for generating bytecode when we just have the
      SFI
      
      R=verwaest@chromium.org,marja@chromium.org
      BUG=v8:5215
      
      Review-Url: https://codereview.chromium.org/2271993002
      Cr-Commit-Position: refs/heads/master@{#39243}
      ce3f46b1
  28. 06 Sep, 2016 1 commit
  29. 31 Aug, 2016 2 commits
    • adamk's avatar
      Remove CONST_LEGACY VariableMode · 7516fe1e
      adamk authored
      The only remaining use of this VariableMode is for the names of sloppy
      named function expressions. This patch instead uses CONST for such
      bindings (just as we do in strict mode) and instead marks those
      Variables specially. During code generation a new helper method,
      Variable::throw_on_const_assignment(), is called to decide whether
      to throw or silently ignore the assignment.
      
      Review-Url: https://codereview.chromium.org/2233673003
      Cr-Commit-Position: refs/heads/master@{#39052}
      7516fe1e
    • neis's avatar
      [modules] Partial scope info support of modules · 840d1e84
      neis authored
      This introduces a new heap object ModuleInfo, which is to ModuleDescriptor
      what ScopeInfo is to Scope.  When deserializing a scope info that contains
      a module info, we deserialize the module info into a module descriptor and
      put it into the synthesized module scope.
      
      Currently, module infos only store exports.
      
      R=adamk@chromium.org
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2277253003
      Cr-Commit-Position: refs/heads/master@{#39049}
      840d1e84