1. 21 Aug, 2020 1 commit
    • Mythri A's avatar
      [turboprop] For double data fields check loaded value is HeapNumber · 3551cac6
      Mythri A authored
      With in-place representation changes we can transition from a double
      field to a Tagged field without changing the map. So it is not always
      safe to assume the loaded value would be a HeapNumber. TurboFan takes a
      dependency on the field representation to ensure the code is deoptimized
      on any changes. With dynamic map checks, it is not possible to take such
      a dependency. Hence check the loaded value is a HeapNumber and
      deoptimize otherwise.
      
      Bug: chromium:1112155,v8:10582
      Change-Id: I910ac1c0781ac8842fdbf272f9173b55b02923ba
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2354810
      Commit-Queue: Mythri Alle <mythria@chromium.org>
      Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69521}
      3551cac6
  2. 20 Aug, 2020 2 commits
  3. 19 Aug, 2020 2 commits
  4. 18 Aug, 2020 5 commits
  5. 17 Aug, 2020 5 commits
    • Ng Zhi An's avatar
      [wasm-simd] Support returning Simd128 on caller's stack · 360c9294
      Ng Zhi An authored
      In Liftoff, we were missing kS128 cases to load to/from stack.
      
      For the x64 and ARM64 instruction selector, the calculation of
      reverse_slot is incorrect for 128-bit values:
      
      - reverse_slot += 2 (size of 128-bit values, 2 pointers)
      - this copies from slot -2 into register
      - but the value starts at slot -1, it occupies slots -1 and -2
      - we end up copying slot -2 (most significant half) of the register, and
      also slot -3, which is where rsi was store (Wasm instance addr)
      - the test ends up with a different result every time
      
      The calculation of reverse_slot is changed to follow how ia32 and ARM
      does it, which is to start with
      
      - reverse_slot = 0
      - in the code-generator, add 1 to the slot
      - then after emitting Peek operation, reverse_slot += 2
      
      The fixes for x64 and ARM64 are in both instruction-selector and
      code-generator.
      
      ia32 and ARM didn't support writing kSimd128 values yet, it was only a
      missing check in code-generator, so add that in.
      
      For ARM, the codegen is more involved, vld1 does not support addressing
      with an offset, so we have to do the addition into a scratch register.
      
      Also adding a test for returning multiple v128. V128 is not exposed to
      JavaScript, so we use a Wasm function call, and then an involved chain
      of extract lanes, returning 6 i32 which we verify the values of. It
      extracts the first and last lane of the i32x4 value in order to catch
      bugs where we write or read to a wrong stack slot (off by 1).
      
      The simd-scalar-lowering for kCall was only handling single s128 return,
      we adopt the way i64-lowering handles kCall, so that is can now handle
      any kinds of calls with s128 in the descriptor.
      
      Bug: v8:10794
      Bug: chromium:1115230
      Change-Id: I2ccdd55f6292bc5794be78053b27e14da8cce70e
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2355189
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69439}
      360c9294
    • Francis McCabe's avatar
      Revert "Reland^3 "[flags] warn about contradictory flags"" · a5756085
      Francis McCabe authored
      This reverts commit dc18b822.
      
      Reason for revert: still causing failures: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/31566
      
      Original change's description:
      > Reland^3 "[flags] warn about contradictory flags"
      > 
      > This is a reland of 0ba115e6
      > Changes:
      > - Also allow second parameter influenced by --cache to be reassigned.
      > - Fix --stress-opt to only --always-opt in the last iteration as before.
      > 
      > Original change's description:
      > > Reland^2 "[flags] warn about contradictory flags"
      > >
      > > This is a reland of d8f8a7e2
      > > Change compared to last reland:
      > > - Do not check for d8 flag contradictions in the presence of --fuzzing
      > > - Allow identical re-declaration of --cache=*
      > >
      > > Original change's description:
      > > > Reland "[flags] warn about contradictory flags"
      > > >
      > > > This is a reland of b8f91666
      > > > Difference to previous CL: Additional functionality to specify
      > > > incompatible flags based on GN variables and extra-flags, used
      > > > to fix the issues that came up on the waterfall.
      > > >
      > > > This also changes the rules regarding repeated flags: While
      > > > explicitly repeated flags are allowed for boolean values as long
      > > > as they are identical, repeated flags or explicit flags in the
      > > > presence of an active implication are disallowed for non-boolean
      > > > flags. The latter simplifies specifying conflict rules in
      > > > variants.py. Otherwise a rule like
      > > >
      > > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = {
      > > >   "--gc-interval=*": ["--gc-interval=*"],
      > > > }
      > > >
      > > > wouldn't work because specifying the same GC interval twice
      > > > wouldn't actually count as a conflict. This was an issue with
      > > > test/mjsunit/wasm/gc-buffer.js, which specifies
      > > > --gc-interval=500 exactly like the extra flag by the stress bot.
      > > >
      > > > Also, this now expands contradictory flags checking to d8 flags
      > > > for consistency.
      > > >
      > > > Original change's description:
      > > > > [flags] warn about contradictory flags
      > > > >
      > > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/
      > > > >
      > > > > Bug: v8:10577
      > > > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab
      > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792
      > > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
      > > > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > > > Cr-Commit-Position: refs/heads/master@{#68168}
      > > >
      > > > Bug: v8:10577
      > > > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115
      > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#68989}
      > >
      > > Bug: v8:10577
      > > Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464
      > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#69339}
      > 
      > Bug: v8:10577
      > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng
      > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
      > Change-Id: I4a69dc57a102782cb453144323e3752ac8278624
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352770
      > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
      > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#69433}
      
      TBR=machenbach@chromium.org,neis@chromium.org,clemensb@chromium.org,tebbi@chromium.org,tmrts@chromium.org
      
      Change-Id: I4ccdd7b931d0ddccbcec1d6cfae8d4874ee49cfc
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:10577
      Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng
      Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2360414Reviewed-by: 's avatarFrancis McCabe <fgm@chromium.org>
      Commit-Queue: Francis McCabe <fgm@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69438}
      a5756085
    • Tobias Tebbi's avatar
      Reland^3 "[flags] warn about contradictory flags" · dc18b822
      Tobias Tebbi authored
      This is a reland of 0ba115e6
      Changes:
      - Also allow second parameter influenced by --cache to be reassigned.
      - Fix --stress-opt to only --always-opt in the last iteration as before.
      
      Original change's description:
      > Reland^2 "[flags] warn about contradictory flags"
      >
      > This is a reland of d8f8a7e2
      > Change compared to last reland:
      > - Do not check for d8 flag contradictions in the presence of --fuzzing
      > - Allow identical re-declaration of --cache=*
      >
      > Original change's description:
      > > Reland "[flags] warn about contradictory flags"
      > >
      > > This is a reland of b8f91666
      > > Difference to previous CL: Additional functionality to specify
      > > incompatible flags based on GN variables and extra-flags, used
      > > to fix the issues that came up on the waterfall.
      > >
      > > This also changes the rules regarding repeated flags: While
      > > explicitly repeated flags are allowed for boolean values as long
      > > as they are identical, repeated flags or explicit flags in the
      > > presence of an active implication are disallowed for non-boolean
      > > flags. The latter simplifies specifying conflict rules in
      > > variants.py. Otherwise a rule like
      > >
      > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = {
      > >   "--gc-interval=*": ["--gc-interval=*"],
      > > }
      > >
      > > wouldn't work because specifying the same GC interval twice
      > > wouldn't actually count as a conflict. This was an issue with
      > > test/mjsunit/wasm/gc-buffer.js, which specifies
      > > --gc-interval=500 exactly like the extra flag by the stress bot.
      > >
      > > Also, this now expands contradictory flags checking to d8 flags
      > > for consistency.
      > >
      > > Original change's description:
      > > > [flags] warn about contradictory flags
      > > >
      > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/
      > > >
      > > > Bug: v8:10577
      > > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792
      > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
      > > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#68168}
      > >
      > > Bug: v8:10577
      > > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115
      > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#68989}
      >
      > Bug: v8:10577
      > Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464
      > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#69339}
      
      Bug: v8:10577
      Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng
      Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
      Change-Id: I4a69dc57a102782cb453144323e3752ac8278624
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352770
      Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69433}
      dc18b822
    • Marja Hölttä's avatar
      [Atomics.waitAsync] Add regression test · 97846e03
      Marja Hölttä authored
      Bug: v8:10239, chromium:1115354
      Change-Id: I64b028b383dcff1e4224c945ee1f982d1979eb9d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2354813Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Commit-Queue: Marja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69430}
      97846e03
    • Thibaud Michaud's avatar
      [wasm] Disable multi-value · 20728eeb
      Thibaud Michaud authored
      Temporarily disable multi-value until the launch is approved.
      
      R=ahaas@chromium.org
      
      Bug: chromium:1097717
      Change-Id: Ifb2370d87ec5e531257852bc5fc5259386a022d8
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2358675Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69419}
      20728eeb
  6. 14 Aug, 2020 1 commit
  7. 13 Aug, 2020 2 commits
  8. 11 Aug, 2020 4 commits
    • Ng Zhi An's avatar
      Reland "[wasm-simd][arm] Use vmov to move all ones to register" · 9b9c6b0e
      Ng Zhi An authored
      This is a reland of 57242a05
      
      no-sse4.1 builds were failing due to missing simd-scalar-lowering
      for s128.const, this reland adds that implementation.
      
      Original change's description:
      > [wasm-simd][arm] Use vmov to move all ones to register
      >
      > vceq(dst, dst, dst) does not seem to always set the register to all
      > ones. The right way should be be to use vmov (immediate) anyway. This
      > was not supported in the assembler yet, so we need changes to the
      > assembler, diassembler, and simulator.
      >
      > There is an unfortunate fork in logic in the simulator, due to the way
      > the switches are set up, vmov (imm) logic is duplicated across two
      > different cases, because the switch looks at the top bit of the
      > immediate. Refactoring this will be a bigger change that is irrelevant
      > for this bug, so I'm putting that off for now. Instead we extract the
      > core of vmov (imm) into helpers and call it in the two cases.
      >
      > Bug: chromium:1112124
      > Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503
      > Commit-Queue: Zhi An Ng <zhin@chromium.org>
      > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
      > Reviewed-by: Bill Budge <bbudge@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#69315}
      
      Bug: chromium:1112124
      Change-Id: Id450e5cea41f7a569e49be8386a7788ca8f00658
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2346937Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69346}
      9b9c6b0e
    • Bill Budge's avatar
      Revert "Reland^2 "[flags] warn about contradictory flags"" · 7e932233
      Bill Budge authored
      This reverts commit 0ba115e6.
      
      Reason for revert: Breaks test on TSAN - block-conflicts
      https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20concurrent%20marking/14230
      
      Original change's description:
      > Reland^2 "[flags] warn about contradictory flags"
      > 
      > This is a reland of d8f8a7e2
      > Change compared to last reland:
      > - Do not check for d8 flag contradictions in the presence of --fuzzing
      > - Allow identical re-declaration of --cache=*
      > 
      > Original change's description:
      > > Reland "[flags] warn about contradictory flags"
      > >
      > > This is a reland of b8f91666
      > > Difference to previous CL: Additional functionality to specify
      > > incompatible flags based on GN variables and extra-flags, used
      > > to fix the issues that came up on the waterfall.
      > >
      > > This also changes the rules regarding repeated flags: While
      > > explicitly repeated flags are allowed for boolean values as long
      > > as they are identical, repeated flags or explicit flags in the
      > > presence of an active implication are disallowed for non-boolean
      > > flags. The latter simplifies specifying conflict rules in
      > > variants.py. Otherwise a rule like
      > >
      > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = {
      > >   "--gc-interval=*": ["--gc-interval=*"],
      > > }
      > >
      > > wouldn't work because specifying the same GC interval twice
      > > wouldn't actually count as a conflict. This was an issue with
      > > test/mjsunit/wasm/gc-buffer.js, which specifies
      > > --gc-interval=500 exactly like the extra flag by the stress bot.
      > >
      > > Also, this now expands contradictory flags checking to d8 flags
      > > for consistency.
      > >
      > > Original change's description:
      > > > [flags] warn about contradictory flags
      > > >
      > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/
      > > >
      > > > Bug: v8:10577
      > > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792
      > > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
      > > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#68168}
      > >
      > > Bug: v8:10577
      > > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115
      > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#68989}
      > 
      > Bug: v8:10577
      > Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464
      > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#69339}
      
      TBR=machenbach@chromium.org,neis@chromium.org,clemensb@chromium.org,tebbi@chromium.org,tmrts@chromium.org
      
      Change-Id: I1454a05e357ddd704db7fb79e51be65d45a9a16e
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:10577
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2348365Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69341}
      7e932233
    • Tobias Tebbi's avatar
      Reland^2 "[flags] warn about contradictory flags" · 0ba115e6
      Tobias Tebbi authored
      This is a reland of d8f8a7e2
      Change compared to last reland:
      - Do not check for d8 flag contradictions in the presence of --fuzzing
      - Allow identical re-declaration of --cache=*
      
      Original change's description:
      > Reland "[flags] warn about contradictory flags"
      >
      > This is a reland of b8f91666
      > Difference to previous CL: Additional functionality to specify
      > incompatible flags based on GN variables and extra-flags, used
      > to fix the issues that came up on the waterfall.
      >
      > This also changes the rules regarding repeated flags: While
      > explicitly repeated flags are allowed for boolean values as long
      > as they are identical, repeated flags or explicit flags in the
      > presence of an active implication are disallowed for non-boolean
      > flags. The latter simplifies specifying conflict rules in
      > variants.py. Otherwise a rule like
      >
      > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = {
      >   "--gc-interval=*": ["--gc-interval=*"],
      > }
      >
      > wouldn't work because specifying the same GC interval twice
      > wouldn't actually count as a conflict. This was an issue with
      > test/mjsunit/wasm/gc-buffer.js, which specifies
      > --gc-interval=500 exactly like the extra flag by the stress bot.
      >
      > Also, this now expands contradictory flags checking to d8 flags
      > for consistency.
      >
      > Original change's description:
      > > [flags] warn about contradictory flags
      > >
      > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/
      > >
      > > Bug: v8:10577
      > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab
      > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792
      > > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > > Reviewed-by: Michael Achenbach <machenbach@chromium.org>
      > > Reviewed-by: Georg Neis <neis@chromium.org>
      > > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#68168}
      >
      > Bug: v8:10577
      > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115
      > Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      > Reviewed-by: Tamer Tas <tmrts@chromium.org>
      > Reviewed-by: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Georg Neis <neis@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#68989}
      
      Bug: v8:10577
      Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464
      Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69339}
      0ba115e6
    • Clemens Backes's avatar
      Reland "[wasm] Ensure that only TurboFan code is serialized" · cdd984ef
      Clemens Backes authored
      This is a reland of 60ee70bb.
      The wasm c-api flakes were fixed in https://crrev.com/c/2349293.
      
      Original change's description:
      > [wasm] Ensure that only TurboFan code is serialized
      >
      > We have the implicit assumption that Liftoff code will never be
      > serialized, and we start relying on that when implementing new features
      > (debugging, dynamic tiering).
      >
      > This CL makes the serializer fail if the module contains any Liftoff
      > code. Existing tests are changed to ensure that we fully tiered up
      > before serializing a module (similar to the logic in Chromium).
      > The "wasm-clone-module" test needs to serialize the module before
      > enabling the debugger.
      >
      > Note that chrome currently only serializes a module after it fully
      > tiered up, so that should be fine. If other embedders need the ability
      > to serialize a module in an arbitrary state, we will have to fix this
      > later. With this CL we will be on the safe side though and (gracefully)
      > fail serialization instead of accidentally serializing Liftoff code.
      >
      > R=ahaas@chromium.org
      >
      > Bug: v8:10777
      > Change-Id: I1245e5f7fda3447a544c1e3525e1239cde759174
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2336799
      > Commit-Queue: Clemens Backes <clemensb@chromium.org>
      > Reviewed-by: Andreas Haas <ahaas@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#69276}
      
      Bug: v8:10777
      Change-Id: I2a7c1429812ca46d88a2902b8e0a7b7e3d638b56
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2349290Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#69335}
      cdd984ef
  9. 10 Aug, 2020 6 commits
  10. 07 Aug, 2020 6 commits
  11. 06 Aug, 2020 6 commits