1. 18 Apr, 2017 3 commits
    • gdeepti's avatar
      [wasm] Handle no initial memory case correctly when memory is exported · 78b8d7ed
      gdeepti authored
      Currently when the module has memory specified in the compiled bytes, but with no initial memory
      exported memory assigns a bogus buffer to the instance. When grow_memory is called on this buffer, it tries to patch an incorrect address.
       - Fix exported memory to handle no initial memory
       - Fix grow_memory to handle uninitialized buffers
      
      BUG=chromium:710844
      R=bradnelson@chromium.org
      
      Review-Url: https://codereview.chromium.org/2820223002
      Cr-Commit-Position: refs/heads/master@{#44671}
      78b8d7ed
    • kozyatinskiy's avatar
      [inspector] avoid cloning of async call chains · 1bca73bc
      kozyatinskiy authored
      - separated V8StackTraceImpl and AsyncStackTrace,
      - V8Debugger owns all AsyncStackTrace and cleanup half of them when limit is reached (first created - first cleaned),
      - V8StackTraceImpl, AsyncStackTrace and async-task-related tables in V8Debugger have weak reference to other async stack traces.
      - async tasks are cleared with related async stacks.
      
      BUG=v8:6189
      R=dgozman@chromium.org
      
      Review-Url: https://codereview.chromium.org/2816043006
      Cr-Commit-Position: refs/heads/master@{#44670}
      1bca73bc
    • mtrofin's avatar
      [wasm] instantiate expressed in terms of compile · 71cf4890
      mtrofin authored
      Today, the semantics of:
      
      WebAssembly.instantiate
      
      and
      
      WebAssembly.compile().then(new WebAssemblyInstance)
      
      are subtly different, to the point where attempting the proposed
      change uncovered bugs.
      
      In the future, it's possible that .instantiate actually have different
      semantics - if we pre-specialized to the provided ffi, for example.
      Right now that's not the case.
      
      This CL:
      - gets our implementation closer to what developers may write using
      the compile -> new Instance alternative, in particular wrt promise
      creation. By reusing code paths, we uncover more bugs, and keep
      maintenance cost lower.
      
      - it gives us the response-based WebAssembly.instantiate implicitly.
      Otherwise, we'd need that same implementation on the blink side. The
      negative is maintenance: imagine if the bugs I mentioned could only be
      found when running in Blink.
      
      BUG=chromium:697028
      
      Review-Url: https://codereview.chromium.org/2806073002
      Cr-Original-Commit-Position: refs/heads/master@{#44592}
      Committed: https://chromium.googlesource.com/v8/v8/+/7829af3275ff4644a2d0a1270abe1a1e4415e9fb
      Review-Url: https://codereview.chromium.org/2806073002
      Cr-Commit-Position: refs/heads/master@{#44669}
      71cf4890
  2. 17 Apr, 2017 7 commits
  3. 16 Apr, 2017 1 commit
  4. 15 Apr, 2017 1 commit
  5. 14 Apr, 2017 3 commits
  6. 13 Apr, 2017 25 commits