1. 24 Nov, 2016 2 commits
  2. 23 Nov, 2016 2 commits
  3. 21 Nov, 2016 1 commit
  4. 18 Nov, 2016 1 commit
    • mstarzinger's avatar
      [ast] Fix typo in {Scope::set_asm_function} method. · 28d7c1fb
      mstarzinger authored
      This fixes the bogus implementation of the function in question and adds
      test coverage for the deserialization of the corresponding flags from
      the serialized scope info. Note that the tests so far only cover cases
      where the module and the function contain context-allocated variables.
      
      R=verwaest@chromium.org
      TEST=cctest/test-parsing/AsmFunctionFlag
      BUG=v8:5653
      
      Review-Url: https://codereview.chromium.org/2507063004
      Cr-Commit-Position: refs/heads/master@{#41093}
      28d7c1fb
  5. 14 Nov, 2016 1 commit
  6. 11 Nov, 2016 1 commit
  7. 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
  8. 02 Nov, 2016 1 commit
    • verwaest's avatar
      Thread decls-list through Declaration using a ThreadedList · 5a18685e
      verwaest authored
      This reduces per-scope overhead from minimally 6 words to 2 words, with one additional pointer per entry, rather than an average of 2 per entry for larger-than-4 element lists. For temp zone parsed functions it additionally makes the declaration-list actually freeable.
      
      This introduces ThreadedList to implement the details of dealing with such a list.
      
      BUG=v8:5209
      
      Review-Url: https://codereview.chromium.org/2457393003
      Cr-Commit-Position: refs/heads/master@{#40703}
      5a18685e
  9. 27 Oct, 2016 1 commit
  10. 25 Oct, 2016 1 commit
  11. 20 Oct, 2016 1 commit
    • adamk's avatar
      [ignition] Eliminate hole checks where statically possible for loads and stores · 35a3ccbf
      adamk authored
      Move hole check logic from full-codegen into scope analysis, and store the
      "needs hole check" bit on VariableProxy. This makes it easy to re-use in
      any backend: it will be trivial to extend the use of this logic in, e.g.,
      full-codegen variable stores.
      
      While changing the signatures of the variable loading/storing methods in
      Ignition, I took the liberty of replacing the verb "Visit" with "Build", since these
      are not part of AST visiting.
      
      BUG=v8:5460
      
      Review-Url: https://chromiumcodereview.appspot.com/2411873004
      Cr-Commit-Position: refs/heads/master@{#40479}
      35a3ccbf
  12. 17 Oct, 2016 4 commits
  13. 13 Oct, 2016 2 commits
  14. 07 Oct, 2016 1 commit
  15. 06 Oct, 2016 1 commit
  16. 04 Oct, 2016 1 commit
  17. 29 Sep, 2016 1 commit
  18. 28 Sep, 2016 3 commits
    • verwaest's avatar
      Don't use different function scopes when parsing with temp zones · 669719d5
      verwaest authored
      Previously we'd have a scope in the main zone, and another in the temp zone. Then we carefully copied back data to the main zone. This CL changes it so that the scope is just fixed up to only contain data from the main zone. That avoids additional copies and additional allocations; while not increasing the care that needs to be taken. This will also make it easier to abort preparsing while parsing using a temp zone.
      
      BUG=
      
      Committed: https://crrev.com/f41e7ebd62b32e861b6aa14ad8bfce3018d03c3c
      Review-Url: https://codereview.chromium.org/2368313002
      Cr-Original-Commit-Position: refs/heads/master@{#39800}
      Cr-Commit-Position: refs/heads/master@{#39828}
      669719d5
    • verwaest's avatar
      Revert of Don't use different function scopes when parsing with temp zones... · 9e2b40aa
      verwaest authored
      Revert of Don't use different function scopes when parsing with temp zones (patchset #11 id:200001 of https://codereview.chromium.org/2368313002/ )
      
      Reason for revert:
      Revert due to asm.js slowdown
      
      Original issue's description:
      > Don't use different function scopes when parsing with temp zones
      >
      > Previously we'd have a scope in the main zone, and another in the temp zone. Then we carefully copied back data to the main zone. This CL changes it so that the scope is just fixed up to only contain data from the main zone. That avoids additional copies and additional allocations; while not increasing the care that needs to be taken. This will also make it easier to abort preparsing while parsing using a temp zone.
      >
      > BUG=
      >
      > Committed: https://crrev.com/f41e7ebd62b32e861b6aa14ad8bfce3018d03c3c
      > Cr-Commit-Position: refs/heads/master@{#39800}
      
      TBR=marja@chromium.org,adamk@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=
      
      Review-Url: https://codereview.chromium.org/2379533003
      Cr-Commit-Position: refs/heads/master@{#39821}
      9e2b40aa
    • verwaest's avatar
      Don't use different function scopes when parsing with temp zones · f41e7ebd
      verwaest authored
      Previously we'd have a scope in the main zone, and another in the temp zone. Then we carefully copied back data to the main zone. This CL changes it so that the scope is just fixed up to only contain data from the main zone. That avoids additional copies and additional allocations; while not increasing the care that needs to be taken. This will also make it easier to abort preparsing while parsing using a temp zone.
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/2368313002
      Cr-Commit-Position: refs/heads/master@{#39800}
      f41e7ebd
  19. 27 Sep, 2016 3 commits
  20. 26 Sep, 2016 4 commits
  21. 22 Sep, 2016 1 commit
  22. 21 Sep, 2016 1 commit
    • verwaest's avatar
      Add function-var to variables_ so LookupRecursive doesn't need to special-case it · 65bae443
      verwaest authored
      After parsing a function, if there's no masking declaration in the function scope, DeclareFunctionVar will also bind the function name to a variable. It will either bind it to the const/const-legacy function_ variable, or to a dynamic non-local if the function calls sloppy eval.
      
      Even if the variable is masked or sloppy eval is called, we still declare the function-var. The client immediately sets up the variable by assigning the resulting function to it.
      
      BUG=v8:5209
      
      Review-Url: https://codereview.chromium.org/2274133002
      Cr-Commit-Position: refs/heads/master@{#39581}
      65bae443
  23. 20 Sep, 2016 4 commits
  24. 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