1. 08 Jan, 2018 1 commit
  2. 22 Dec, 2017 1 commit
    • Georg Neis's avatar
      [modules] Implement recent ES revisions. · a067281d
      Georg Neis authored
      - Instantiation errors are no longer recorded. If instantiation fails,
        the module(s) are reset to "uninstantiated". When instantiation is
        re-attempted, the thrown exception will be fresh.
      - Instantiation can succeed even where there are modules in the graph
        that previously failed evaluation.
      
      Bug: v8:1569
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I429f616918afe5f8ab1a956024f0a22f464b8c44
      Reviewed-on: https://chromium-review.googlesource.com/763369
      Commit-Queue: Georg Neis <neis@chromium.org>
      Reviewed-by: 's avatarAdam Klein <adamk@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50301}
      a067281d
  3. 28 Jun, 2017 1 commit
  4. 21 Jun, 2017 1 commit
  5. 29 May, 2017 1 commit
  6. 19 Apr, 2017 1 commit
  7. 28 Feb, 2017 2 commits
  8. 19 Jan, 2017 1 commit
  9. 11 Oct, 2016 2 commits
    • adamk's avatar
      [modules] Store Module metadata in per-Context EmbedderData · 9d2051fc
      adamk authored
      This is a re-land of https://codereview.chromium.org/2393303002/ with
      an additional call to DisposeModuleEmbedderData() added to fix lsan failures.
      
      Unifies the approaches used for storing the specifier -> module mapping
      and the module -> directory mapping, using std::unordered_maps for both
      and storing them per-Context.
      
      This requires adding a method to the v8::Module API to get a hash code
      for a Module, but allows slimming down the API in return: gone are
      SetEmbedderData/GetEmbedderData, along with the fourth argument
      to ResolveModuleCallback.
      
      Besides a simpler API, this allows d8 to get closer to the HTML loader,
      which requires each Realm to have a persistent module map (though this
      capability is not yet exercised by any tests).
      
      BUG=v8:1569
      TBR=neis@chromium.org,jochen@chromium.org
      
      Review-Url: https://codereview.chromium.org/2405313002
      Cr-Commit-Position: refs/heads/master@{#40186}
      9d2051fc
    • adamk's avatar
      Revert of [modules] Store Module metadata in per-Context EmbedderData... · 12779889
      adamk authored
      Revert of [modules] Store Module metadata in per-Context EmbedderData (patchset #7 id:120001 of https://codereview.chromium.org/2393303002/ )
      
      Reason for revert:
      Fails under LeakSanitizer on auto-roll fyi bot:
      
      https://build.chromium.org/p/client.v8.fyi/builders/Auto-roll%20-%20release%20process/builds/49447
      
      Original issue's description:
      > [modules] Store Module metadata in per-Context EmbedderData
      >
      > Unifies the approaches used for storing the specifier -> module mapping
      > and the module -> directory mapping, using std::unordered_maps for both
      > and storing them per-Context.
      >
      > This requires adding a method to the v8::Module API to get a hash code
      > for a Module, but allows slimming down the API in return: gone are
      > SetEmbedderData/GetEmbedderData, along with the fourth argument
      > to ResolveModuleCallback.
      >
      > Besides a simpler API, this allows d8 to get closer to the HTML loader,
      > which requires each Realm to have a persistent module map (though this
      > capability is not yet exercised by any tests).
      >
      > BUG=v8:1569
      >
      > Committed: https://crrev.com/9cf8fce74cf6e7afd6aea3f3545f6bb61572f277
      > Cr-Commit-Position: refs/heads/master@{#40133}
      
      TBR=jochen@chromium.org,neis@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2406973003
      Cr-Commit-Position: refs/heads/master@{#40145}
      12779889
  10. 10 Oct, 2016 1 commit
    • adamk's avatar
      [modules] Store Module metadata in per-Context EmbedderData · 9cf8fce7
      adamk authored
      Unifies the approaches used for storing the specifier -> module mapping
      and the module -> directory mapping, using std::unordered_maps for both
      and storing them per-Context.
      
      This requires adding a method to the v8::Module API to get a hash code
      for a Module, but allows slimming down the API in return: gone are
      SetEmbedderData/GetEmbedderData, along with the fourth argument
      to ResolveModuleCallback.
      
      Besides a simpler API, this allows d8 to get closer to the HTML loader,
      which requires each Realm to have a persistent module map (though this
      capability is not yet exercised by any tests).
      
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2393303002
      Cr-Commit-Position: refs/heads/master@{#40133}
      9cf8fce7
  11. 22 Sep, 2016 1 commit
  12. 20 Sep, 2016 1 commit
    • adamk's avatar
      [modules] Expand API to allow linking and use it in d8 · cf127e81
      adamk authored
      This patch gives the ability for the embedder to ask for the
      module requests of a module, and to pass a ResolveCallback
      into Module::Instantiate().
      
      In d8, I've implemented a simple module_map that's used
      along with this API to allow loading, compiling, instantiating,
      and evaluating a whole tree of modules.
      
      No path resolution is yet implemented, meaning that all
      import paths are relative to whatever directory d8 runs
      in. And no imports are linked to the exports of the
      requested module.
      
      BUG=v8:1569
      
      Review-Url: https://codereview.chromium.org/2351113004
      Cr-Commit-Position: refs/heads/master@{#39569}
      cf127e81
  13. 10 Feb, 2015 1 commit
    • adamk's avatar
      Enable compiling mjsunit tests as ES6 modules · a18b797f
      adamk authored
      Adding the line "// MODULE" to an mjsunit file will now cause
      run-tests.py to prefix the test case with "--module" in the
      d8 commandline.
      
      d8 has itself been updated to treat files preceded with "--module" as
      modules (that is, it compiles them with ScriptCompiler::CompileModule,
      and turns on --harmony-modules).
      
      Review URL: https://codereview.chromium.org/902263002
      
      Cr-Commit-Position: refs/heads/master@{#26555}
      a18b797f
  14. 06 Feb, 2015 1 commit
    • adamk's avatar
      Add basic compilation support for modules · 70079dab
      adamk authored
      This adds an "experimental" API hook (v8::ScriptCompiler::CompileModule)
      allowing compilation of modules. The code gen is incredibly basic: the
      module body is represented by a Block in the AST. But this at least gets
      more of the pipeline working, and opens the door to writing mjsunit tests
      (once d8 is modified to support module compilation).
      
      BUG=v8:1569
      LOG=n
      
      Review URL: https://codereview.chromium.org/902093002
      
      Cr-Commit-Position: refs/heads/master@{#26496}
      70079dab