1. 22 Jul, 2019 3 commits
  2. 21 Jul, 2019 2 commits
  3. 20 Jul, 2019 3 commits
  4. 19 Jul, 2019 22 commits
  5. 18 Jul, 2019 10 commits
    • Andreas Haas's avatar
      [wasm][bulk-memory] Adjust memory.fill to recent spec changes · f8047441
      Andreas Haas authored
      R=binji@chromium.org
      
      Change-Id: I01721c708b1e40cdef4bd48a1f9ca68b31c8f49d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708470Reviewed-by: 's avatarBen Smith <binji@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62814}
      f8047441
    • Z Nguyen-Huu's avatar
      Implement proxy trap deleteProperty in Torque, apply to reflect · 269c279e
      Z Nguyen-Huu authored
      Reflect.deleteProperty now is a Torque builtins, also containing fast
      path for proxy object.
      
      Bug: v8:6664
      Change-Id: I76d6fba2c9d05d991132957783d987a190585ec8
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1704943
      Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com>
      Reviewed-by: 's avatarSimon Zünd <szuend@chromium.org>
      Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62813}
      269c279e
    • Adam Klein's avatar
      [builtins] Allow API callbacks to return BigInts · 33789183
      Adam Klein authored
      This fixes the debug code which checks that API callbacks
      return only valid JS values: BigInt was missing from the list
      of allowable types.
      
      Bug: chromium:985115
      Change-Id: I8b3db409bd99e9e9b936d520d0fdbe75654e7602
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1706623Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Adam Klein <adamk@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62812}
      33789183
    • Clemens Hammacher's avatar
      Revert "Reland "[arraybuffer] Rearchitect backing store ownership"" · 6e0473f3
      Clemens Hammacher authored
      This reverts commit bc33f5ae.
      
      Reason for revert: Still failing (OOM on win32): https://ci.chromium.org/p/v8/builders/ci/V8%20Win32/22210
      
      Original change's description:
      > Reland "[arraybuffer] Rearchitect backing store ownership"
      > 
      > This is a reland of 31cd5d83
      > 
      > Original change's description:
      > > [arraybuffer] Rearchitect backing store ownership
      > > 
      > > This CL completely rearchitects the ownership of array buffer backing stores,
      > > consolidating ownership into a {BackingStore} C++ object that is tracked
      > > throughout V8 using unique_ptr and shared_ptr where appropriate.
      > > 
      > > Overall, lifetime management is simpler and more explicit. The numerous
      > > ways that array buffers were initialized have been streamlined to one
      > > Attach() method on JSArrayBuffer. The array buffer tracker in the
      > > GC implementation now manages std::shared_ptr<BackingStore> pointers,
      > > and the construction and destruction of the BackingStore object itself
      > > handles the underlying page or embedder-allocated memory.
      > > 
      > > The embedder API remains unchanged for now. We use the
      > > v8::ArrayBuffer::Contents struct to hide an additional shared_ptr to
      > > keep the backing store alive properly, even in the case of aliases
      > > from live heap objects. Thus the embedder has a lower chance of making
      > > a mistake. Long-term, we should move the embedder to a model where they
      > > manage backing stores using shared_ptr to an opaque backing store object.
      > > 
      > > R=mlippautz@chromium.org
      > > BUG=v8:9380,v8:9221
      > > 
      > > Change-Id: I48fae5ac85dcf6172a83f252439e77e7c1a16ccd
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584323
      > > Commit-Queue: Ben Titzer <titzer@chromium.org>
      > > Reviewed-by: Ben Titzer <titzer@chromium.org>
      > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#62572}
      > 
      > Bug: v8:9380, v8:9221
      > Change-Id: If3f72967a8ebeb067c0edcfc16ed631e36829dbc
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1691906
      > Commit-Queue: Ben Titzer <titzer@chromium.org>
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62809}
      
      TBR=ulan@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,titzer@chromium.org,gdeepti@chromium.org,mlippautz@chromium.org
      
      Change-Id: Iea755df9aaa1e95d284135bd0a6681b1340b6832
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:9380, v8:9221
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708487Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62811}
      6e0473f3
    • Peter Marshall's avatar
      [tracing] Separate tracing implementations and add perfetto tests · 317b72b2
      Peter Marshall authored
      Previously both tracing implementations would be run side-by-side when
      perfetto was enabled with the V8_USE_PERFETTO build flag. This CL
      makes them run separately.
      
      Both implementations now use the trace file provided by the user in D8
      or the default v8_trace.json.
      
      Add tests for perfetto events (which must be tested differently
      due to the proto output format).
      
      Drive-by fix: Fix pass-by non-const ref in GetJSONStrings.
      
      Remove the TraceEvent struct for testing; we can just store a copy of
      the protobuf directly.
      
      Bug: v8:8339
      Change-Id: Id50003e0f96e44b99a63a26693da6bdaca989504
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1702619Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62810}
      317b72b2
    • Ben L. Titzer's avatar
      Reland "[arraybuffer] Rearchitect backing store ownership" · bc33f5ae
      Ben L. Titzer authored
      This is a reland of 31cd5d83
      
      Original change's description:
      > [arraybuffer] Rearchitect backing store ownership
      > 
      > This CL completely rearchitects the ownership of array buffer backing stores,
      > consolidating ownership into a {BackingStore} C++ object that is tracked
      > throughout V8 using unique_ptr and shared_ptr where appropriate.
      > 
      > Overall, lifetime management is simpler and more explicit. The numerous
      > ways that array buffers were initialized have been streamlined to one
      > Attach() method on JSArrayBuffer. The array buffer tracker in the
      > GC implementation now manages std::shared_ptr<BackingStore> pointers,
      > and the construction and destruction of the BackingStore object itself
      > handles the underlying page or embedder-allocated memory.
      > 
      > The embedder API remains unchanged for now. We use the
      > v8::ArrayBuffer::Contents struct to hide an additional shared_ptr to
      > keep the backing store alive properly, even in the case of aliases
      > from live heap objects. Thus the embedder has a lower chance of making
      > a mistake. Long-term, we should move the embedder to a model where they
      > manage backing stores using shared_ptr to an opaque backing store object.
      > 
      > R=mlippautz@chromium.org
      > BUG=v8:9380,v8:9221
      > 
      > Change-Id: I48fae5ac85dcf6172a83f252439e77e7c1a16ccd
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584323
      > Commit-Queue: Ben Titzer <titzer@chromium.org>
      > Reviewed-by: Ben Titzer <titzer@chromium.org>
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62572}
      
      Bug: v8:9380, v8:9221
      Change-Id: If3f72967a8ebeb067c0edcfc16ed631e36829dbc
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1691906
      Commit-Queue: Ben Titzer <titzer@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62809}
      bc33f5ae
    • Clemens Hammacher's avatar
      [x64] Fix {Assembler::Nop} for large inputs · 8d758abc
      Clemens Hammacher authored
      {Assembler::Nop} currently fails if {n} is bigger than {kGap} (the
      destructor of {EnsureSpace} checks that not more than {kGap} bytes have
      been emitted).
      This CL fixes this by repeatedly using {EnsureSpace}, and also
      optimizes the implementation of {Assembler::Nop} a bit.
      It also removes stray cases for 10 and 11 nop bytes which have been
      added in https://crrev.com/8773039 without further comment, and are not
      documented in the Intel manual.
      
      R=mstarzinger@chromium.org
      
      Bug: v8:9477
      Change-Id: I07bbe311d2daa75dc27b91a0ccb503427c52841f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708476
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62808}
      8d758abc
    • Sathya Gunasekaran's avatar
      Revert "[runtime] Fix protector invalidation" · 050ad1d8
      Sathya Gunasekaran authored
      This reverts commit e55e0aa5.
      
      Reason for revert: speculative revert for tsan breakage
      https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8907588363297935904/+/steps/Check__flakes_/0/logs/regress-437713/0
      
      Original change's description:
      > [runtime] Fix protector invalidation
      > 
      > Protectors trigger when special properties are modified or masked. Previously
      > we would check whether the property stored on the holder would invalidate the
      > protector. Stores to to the receiver rather than the holder, however, so this
      > CL changes holder for receiver, and adds additional checks that were missing.
      > 
      > Bug: v8:9466
      > Change-Id: I81bc3d73f91381da0d254e9eb79365ae2d25d998
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708468
      > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62805}
      
      TBR=leszeks@chromium.org,verwaest@chromium.org
      
      Change-Id: Id8fc36525b7c5631589a67073ad1fd5815ea2775
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:9466
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708482Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62807}
      050ad1d8
    • Yang Guo's avatar
      Debugger: expose local scope for class member initializer · 50b996f2
      Yang Guo authored
      R=gsathya@chromium.org
      
      Change-Id: I892b96d5749066df476ace705f45a801a795c0a0
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1706060
      Auto-Submit: Yang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarSathya Gunasekaran <gsathya@chromium.org>
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62806}
      50b996f2
    • Toon Verwaest's avatar
      [runtime] Fix protector invalidation · e55e0aa5
      Toon Verwaest authored
      Protectors trigger when special properties are modified or masked. Previously
      we would check whether the property stored on the holder would invalidate the
      protector. Stores to to the receiver rather than the holder, however, so this
      CL changes holder for receiver, and adds additional checks that were missing.
      
      Bug: v8:9466
      Change-Id: I81bc3d73f91381da0d254e9eb79365ae2d25d998
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1708468
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62805}
      e55e0aa5