1. 03 Apr, 2020 7 commits
    • Zhao Jiazhong's avatar
      [mips][wasm-simd][liftoff] Implement min of i8x16, i16x8, i32x4 · 1bb1d634
      Zhao Jiazhong authored
      Port ec4ccade
      https://crrev.com/c/2129176
      
      Change-Id: I6c37c6a2be4a42c440dd8c0920647a587f55e44d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2135546Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
      Cr-Commit-Position: refs/heads/master@{#66980}
      1bb1d634
    • Clemens Backes's avatar
      [wasm] Split adding code from publishing · e8ff83dd
      Clemens Backes authored
      Adding code can happen in parallel (it includes copying the code to the
      code region and relocation it). Publishing happens under one lock per
      native module though. We eventually want to avoid blocking on this lock
      for too long. This CL prepares that by splitting the actions of adding
      and publishing code.
      
      R=ahaas@chromium.org
      
      Bug: v8:10330, v8:10387
      Change-Id: Iddbdadfe32e691bbf5e7b387ea947579bc3376f3
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134372
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66979}
      e8ff83dd
    • Clemens Backes's avatar
      [liftoff] Add code comments for OOL code · 2a303b1c
      Clemens Backes authored
      For easier debugging of Liftoff code generation issues, add code
      comments or out-of-line code.
      
      The name is generated from the {RuntimeStubId}. The respective name
      accessor is currently defined on the {NativeModule}, this CL makes it a
      top-level function so we can reuse it from Liftoff.
      
      R=thibaudm@chromium.org
      
      Bug: v8:10235
      Change-Id: I7b99779217b9c052e34ad132eb34859b20548092
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134307
      Commit-Queue: Clemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66978}
      2a303b1c
    • Bruce Dawson's avatar
      Revert "Speculative fix to crashes from a CPU bug" · e84e9b92
      Bruce Dawson authored
      This reverts commit 10360127.
      
      Reason for revert: This fix only had moderate impact and the
      underlying CPU bug has now been addressed.
      
      Original change's description:
      > Speculative fix to crashes from a CPU bug
      > 
      > For the last few months Chrome has been seeing many "impossible" crashes
      > on Intel Gemini Lake, family 6 model 122 stepping 1 CPUs. These crashes
      > only happen with 64-bit Chrome and only happen in the prologue of two
      > functions. The crashes come and go across different Chrome versions.
      > Analysis of most of the crashes shows that the address of the crashing
      > instruction follows some patterns:
      > 
      > When crashing in GetFieldIndex() the last byte of the address is always
      > 1c, 5c, 9c, or dc.
      > 
      > When crashing in UpdateCaches (fewer unique samples) the last byte of
      > the address is always 5d or 9d.
      > 
      > The address of the function is 0xc or 0xd bytes earlier so the crashing
      > functions always start with an address that ends in 10, 50, 90, or d0.
      > 
      > Those addresses are for the crashes on a load of the __security_cookie.
      > The crashes also occasionally happen on the two instructions that follow
      > the __security_cookie load in which case the crashing instruction's
      > address has been seen to end with 23 or a3. This corresponds to a
      > function start address of 10 or 90.
      > 
      > Since the crash involves reading incorrect instruction bytes when
      > crossing a 16-byte boundary and since the crash appears to only happen
      > with particular 16-byte alignments it seems reasonable to force the
      > function's alignments to a multiple of 32 to see if this reliably
      > avoids the crashes. This change uses the gcc/clang __attribute__
      > directive to force 32-byte alignment. I have tested this change enough to
      > verify that it triggers the desired alignment (with up to 31 "int 3"
      > instructions added for padding) but since I have never reproduced this
      > crash I have no way of testing its efficacy.
      > 
      > Bug: chromium:968683, chromium:964273
      > Change-Id: Ia6e1c6d1e044b84d274817374b25523303e78b51
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803775
      > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
      > Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#63804}
      
      TBR=brucedawson@chromium.org,verwaest@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: chromium:968683, chromium:964273
      Change-Id: I150ecfebeff95e8f63dbba74d78491867dc17736
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134728
      Commit-Queue: Toon Verwaest <verwaest@chromium.org>
      Auto-Submit: Bruce Dawson <brucedawson@chromium.org>
      Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66977}
      e84e9b92
    • Michael Lippautz's avatar
      cppgc: TSAN support for stack scanning · 3363adbe
      Michael Lippautz authored
      We cannot rely on the clang compiler to generate the trampoline entry
      and the right mangling because `__attribute__((naked))` does not
      prevent clang from generating TSAN function entry stub
      (`__tsan_func_entry`). Even with `__attribute__((no_sanitize_thread)`
      annotation clang generates the entry stub.
      
      Upstream bug: https://bugs.llvm.org/show_bug.cgi?id=45400
      
      Bug: chromium:1056170
      Change-Id: I7a2063d7d205ee071e6a41ce4d9cb2d8d6423987
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132797Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66976}
      3363adbe
    • Michael Lippautz's avatar
      cppgc: Conservative stack for ia32 Windows using clang · 1e132398
      Michael Lippautz authored
      Add support for ia32 Windows using clang. Change the callback
      function from a member function to a free function. This the
      compiler generating thiscall calling convention for the member
      function which allows for keeping the asm trampoline uniform.
      
      Bug: chromium:1056170
      Change-Id: Ic8fcac27a628a0de026d8fe7d2e376c8f58a1737
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134136Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66975}
      1e132398
    • Anton Bikineev's avatar
      cppgc: Add SourceLocation class · aecd1e58
      Anton Bikineev authored
      SourceLocation is needed to track Persistents.
      
      Bug: chromium:1056170
      Change-Id: I4d5cf151a4d27b4c29582ff8195cdcb7453afe1c
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132790
      Commit-Queue: Anton Bikineev <bikineev@chromium.org>
      Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66974}
      aecd1e58
  2. 02 Apr, 2020 16 commits
    • Timothy Gu's avatar
      [torque] Add CastOrDefault and consistently use Is<Callable> · 51c00e9f
      Timothy Gu authored
      Remove other variants for the same functionality such as IsCallable(),
      TaggedIsCallable(), and !TaggedIsSmi() && IsCallable().
      
      Change-Id: I33bcdf7699c1adf2330b3c11f482f7bbfcd927b3
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107515
      Commit-Queue: Timothy Gu <timothygu@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66973}
      51c00e9f
    • Zhou, Zhiguo's avatar
      [wasm-simd][liftoff] Implement min of i8x16, i16x8, i32x4 on x64 and ia32 · ec4ccade
      Zhou, Zhiguo authored
      Bug: v8:9909
      Change-Id: I11fae10593d135e007866411c61076300ac4ae7d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2129176Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarZhi An Ng <zhin@chromium.org>
      Commit-Queue: Zhiguo Zhou <zhiguo.zhou@intel.com>
      Cr-Commit-Position: refs/heads/master@{#66972}
      ec4ccade
    • Ng Zhi An's avatar
      [wasm-simd][liftoff][arm][arm64] Implement mul · a4ebf1f0
      Ng Zhi An authored
      i64x2 mul is more tricky, the algorithm is slightly modified:
      - for arm64, we can only use 2 temporaries
      - for arm, we only have 1 temporary, so we get another register
      manually, if we need it (modify lhs/rhs if they are not used)
      
      Bug: v8:9909
      Change-Id: I0398e2c95348a8b49ca9773a78ccfb7af73e2eef
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2128606
      Commit-Queue: Zhi An Ng <zhin@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66971}
      a4ebf1f0
    • Frank Tang's avatar
      Roll test262 · 4491da98
      Frank Tang authored
      https://chromium.googlesource.com/external/github.com/tc39/test262/+log/f6b2ccdd..ae8694b4
      
      ae8694b Copy "invalid options" test from RelativeTimeFormat to NumberFormat/DateTimeFormat by André Bargull · 2 days ago
      299cd74 Promise.any: fix "invoke-then.js" test by Rick Waldron · 2 days ago
      9ccd3a7 Test revoked callable [[ProxyTarget]] by Alexey Shvayka · 2 days ago
      91b867b Fix non-callable [[ProxyTarget]] test by Alexey Shvayka · 2 days ago
      e8e3aaa Test revoked [[ProxyHandler]] by Alexey Shvayka · 2 days ago
      8b610fb Test revoked [[ProxyTarget]] by Alexey Shvayka · 2 days ago
      432adbb Adding case where 'static' is used as a field name by Caio Lima · 4 days ago
      4bf836c Merge pull request #2533 from tc39/promise-any by Leo Balter · 5 days ago
      22be03d Promise.any: lint fixes by Rick Waldron · 5 days ago
      d53f45d Promise.any: remove unnecessary static resolve def by Rick Waldron · 7 days ago
      499b748 Promise.any: review fixes, 2 by Rick Waldron · 7 days ago
      b21b0c1 Promise.any: additional "resolve from rejection" tests by Rick Waldron · 7 days ago
      a05fb94 Promise.any: feature flags, 2 by Rick Waldron · 7 days ago
      7fbce5a Promise.any: simplify promise creation by Rick Waldron · 7 days ago
      5c68b60 Promise.any: cleanup in @@species tests by Rick Waldron · 7 days ago
      d9265df Promise.any: additional then + resolve tests by Rick Waldron · 7 days ago
      1c74850 Promise.any: feature flags by Rick Waldron · 7 days ago
      5d3eafc Promise.any: review fixes by Rick Waldron · 7 days ago
      f70e3e3 Features: remove duplicate "Promise.any" by Rick Waldron · 7 days ago
      6edaba3 Promise.any: updates, corrections and new tests. by Rick Waldron · 7 days ago
      e0f0c78 Promise.any: empty iterable rejects with AggregateError by Rick Waldron · 7 days ago
      272e9ab Promise.any: make async operation test actually async by Rick Waldron · 7 days ago
      47b3858 Promise.any: expected rejection shouldn't end with error message. by Rick Waldron · 7 days ago
      55b22d8 Promise.any: string iterable should not be rejected (adds error message for clarity) by Rick Waldron · 7 days ago
      e0abeaa Promise.any: convert sync test to async test to ensure run to completion by Rick Waldron · 7 days ago
      860e02a add iter-assigned tests by chicoxyzzy · 7 days ago
      9567abd Add iter-arg tests by chicoxyzzy · 7 days ago
      094ddc7 add species-get-error test by chicoxyzzy · 7 days ago
      e3d48f2 add Invocation of the instance's `then` method test by chicoxyzzy · 7 days ago
      afe3f0b add reject-immed test by chicoxyzzy · 7 days ago
      adcd162 add is callable test by chicoxyzzy · 7 days ago
      88d058b Add returns promise test by chicoxyzzy · 7 days ago
      be1bf63 Add Promise and Promise.any properties tests by chicoxyzzy · 7 days ago
      23d7f0b add Invocation of the constructor's `resolve` method test by chicoxyzzy · 7 days ago
      f0fd4e0 update features.txt by chicoxyzzy · 7 days ago
      aca1084 Add context tests by chicoxyzzy · 7 days ago
      715964b Add Capability Executor tests by chicoxyzzy · 7 days ago
      96cf757 Harness: properly format negative zero by Alexey Shvayka · 7 days ago
      1e63ce0 Improve String.prototype.@@replace poisoned stdlib test by Alexey Shvayka · 7 days ago
      9b71a7c Fix inconsistent indentation in YAML by Alexey Shvayka · 7 days ago
      ad046ce Avoid using Array.isArray directly by Alexey Shvayka · 7 days ago
      8fe71e1 Drop JSON.stringify stack overflow tests by Alexey Shvayka · 7 days ago
      dfc7ecc AggregateError: If NewTarget is undefined, let newTarget be the active function object (#2537) by Rick Waldron · 9 days ago
      db6f630 Adding test coverage for 'OptionalChain'.PrivateIdentifier case (#2534) by Caio Lima · 9 days ago
      344612b Fix: Proxy set, if trap is undefined (#2536) by Rick Waldron · 9 days ago
      79146e5 Bring back `verifyProp` param to `isWritable` by Alexey Shvayka · 9 days ago
      3bf630c Add for/in test by Alexey Shvayka · 9 days ago
      33b9bba Add Reflect.ownKeys test by Alexey Shvayka · 9 days ago
      b273aff Add Object.values test by Alexey Shvayka · 9 days ago
      5874ca4 Add Object.keys test by Alexey Shvayka · 9 days ago
      c370276 Add Object.getOwnPropertySymbols test by Alexey Shvayka · 9 days ago
      62c9541 Add Object.getOwnPropertyNames test by Alexey Shvayka · 9 days ago
      021b8f2 Add Object.getOwnPropertyDescriptors test by Alexey Shvayka · 9 days ago
      b94190e Add Object.entries test by Alexey Shvayka · 9 days ago
      2abfc8c Remove unused `verifyProp` paramter from `isWritable` by Alexey Shvayka · 9 days ago
      86b9409 Increase unlikely array length by Alexey Shvayka · 9 days ago
      17fc109 Fix isWritable throwing RangeError on Array "length" by Alexey Shvayka · 9 days ago
      1eff480 Add toJSON stack overflow test by Alexey Shvayka · 9 days ago
      2255a0f Add replacer stack overflow test by Alexey Shvayka · 9 days ago
      d2b5f63 Improve "info" meta of replacer with deleted property test by Alexey Shvayka · 9 days ago
      dc21d6b Add "lastIndex" restore test by Alexey Shvayka · 9 days ago
      fe2dfe9 Add "lastIndex" init test by Alexey Shvayka · 9 days ago
      fe4e96d Remove duplicate test regexp/u-dec-esc.js by Ross Kirsling · 9 days ago
      b0bb917 add dfs tests for https://github.com/tc39/ecma262/pull/1669 by Gus Caplan · 9 days ago
      b59d079 Add note on arbitrary large integer by Alexey Shvayka · 9 days ago
      669250d RegExp: Test Quantifier with large integer by Alexey Shvayka · 9 days ago
      8dccb69 Replace "\b" with "\u0008" by Alexey Shvayka · 9 days ago
      2377131 Test \b escape inside CharacterClass in Unicode RegExp by Alexey Shvayka · 9 days ago
      7117cdd Test astral literals within inverted CharacterClass by Alexey Shvayka · 9 days ago
      2cae203 Add functional replacer with empty result test by Alexey Shvayka · 9 days ago
      8e41e8b Add "lastIndex" length abrupt coercion test by Alexey Shvayka · 9 days ago
      0485b83 Add "lastIndex" length coercion test by Alexey Shvayka · 9 days ago
      807afd9 Make "length" coercion test more precise by Alexey Shvayka · 9 days ago
      3f6b961 Make "index" integer coercion test more precise by Alexey Shvayka · 9 days ago
      53d16ac Add "index" integer coercion test with functional replacer by Alexey Shvayka · 9 days ago
      e3e0e0f Add named capture groups abrupt lookup tests by Alexey Shvayka · 9 days ago
      c9e1c1c Add named capture groups abrupt coercion tests by Alexey Shvayka · 9 days ago
      4d3db14 Add named capture groups coercion tests by Alexey Shvayka · 9 days ago
      dbbe2e7 Add "0" string coercion test with global RegExp by Alexey Shvayka · 9 days ago
      50d1419 Make string coercion tests more precise by Alexey Shvayka · 9 days ago
      cf583c9 Add poisoned stdlib test by Alexey Shvayka · 9 days ago
      67e58de Fix typo in file name by Alexey Shvayka · 9 days ago
      fea38b7 Remove extra operation from "info" by Alexey Shvayka · 9 days ago
      13082b0 Add Array#concat test by Alexey Shvayka · 9 days ago
      679ad48 Add Array#reduceRight test by Alexey Shvayka · 9 days ago
      2716290 Add Array#fill test by Alexey Shvayka · 9 days ago
      66913bf Add Array#lastIndexOf test by Alexey Shvayka · 9 days ago
      4d91ea0 Add Array#indexOf test by Alexey Shvayka · 9 days ago
      5885db1 Add Array#copyWithin test by Alexey Shvayka · 9 days ago
      2724ddc Dependency: test262-harness@7.3.0 by Rick Waldron · 9 days ago
      f72db7e Add [[Call]] tests by Alexey Shvayka · 9 days ago
      5c3ea18 Add [[Construct]] tests by Alexey Shvayka · 9 days ago
      aa53649 Add [[HasProperty]] tests by Alexey Shvayka · 9 days ago
      6155fca Add [[Get]] tests by Alexey Shvayka · 9 days ago
      2d60dc0 Add [[Set]] tests by Alexey Shvayka · 9 days ago
      983b1ac Add [[OwnPropertyKeys]] tests by Alexey Shvayka · 9 days ago
      cc6d48d Add [[PreventExtensions]] tests by Alexey Shvayka · 9 days ago
      3987d3c Add [[IsExtensible]] tests by Alexey Shvayka · 9 days ago
      d32db7a Add [[SetPrototypeOf]] tests by Alexey Shvayka · 9 days ago
      20c2ce3 Add [[GetPrototypeOf]] tests by Alexey Shvayka · 9 days ago
      b9377e7 Add [[GetOwnProperty]] tests by Alexey Shvayka · 9 days ago
      d46e72d Add [[Delete]] tests by Alexey Shvayka · 9 days ago
      6b9929a Add [[DefineOwnProperty]] tests by Alexey Shvayka · 9 days ago
      2c432e3 Add coverage for EvaluateNew by Leo Balter · 2 weeks ago
      b29b1da Add tests for new identifier characters per Unicode version (#2532) by Mathias Bynens · 2 weeks ago
      991e05d Move: AggregateError belongs in the NativeErrors directory (#2528) by Rick Waldron · 2 weeks ago
      25c9e33 Update RegExp property escape tests per Unicode v13.0.0 (#2526) by Mathias Bynens · 3 weeks ago
      22cd9fe Repair filter test that was testing concat (#2522) by Steven Cole · 3 weeks ago
      b0cb75f Repair indexOf test that was testing lastIndexOf (#2521) by Steven Cole · 3 weeks ago
      36882a2 Fix: AggregateError/newtarget-proto-fallback. Closes gh-2515 (#2518) by Rick Waldron · 3 weeks ago
      800870c Fix DST sensitivity in Date/parse/without-utc-offset.js. (#2523) by Ross Kirsling · 3 weeks ago
      7631789 add graaljs test runner by Gus Caplan · 4 weeks ago
      56ae1b9 switch to esvu to streamline engine installs by Gus Caplan · 4 weeks ago
      ca13f22 Fix lint.exceptions, I hope? by Ross Kirsling · 4 weeks ago
      70bbce9 Add lint exception. by Ross Kirsling · 4 weeks ago
      df7a0b0 Remove errant LF from CR line ending test again. by Ross Kirsling · 4 weeks ago
      ec6239f typo (#2512) by Claude Pache · 5 weeks ago
      
      Bug: v8:7834, v8:9808, v8:10379, v8:10380, v8:10381, v8:10382, v8:10383, v8:10272
      Change-Id: I9c46af4f0d72a2f1e032ec1c80d40ca096ce9af9
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2133311Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Commit-Queue: Frank Tang <ftang@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66970}
      4491da98
    • Frank Tang's avatar
      [intl] Remove the soon to be deprecated NoUnit · 23e43cc0
      Frank Tang authored
      ICU-TC will deprecate NoUnit later and we were advised to
      replace the code from using it.
      
      Bug: v8:10377
      Change-Id: I8d76624c5378daab1cdabae52917566d0a4dd687
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132717Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
      Commit-Queue: Frank Tang <ftang@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66969}
      23e43cc0
    • Lutz Vahl's avatar
      Update v8 version to 8.4 · fb8f2663
      Lutz Vahl authored
      TBR=liviurau@chromium.org,machenbach@chromium.org
      NOTRY=true
      
      Change-Id: I05c093c22d9d5d6ac889a8229bee5b23e12d6f1e
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134370Reviewed-by: 's avatarLutz Vahl <vahl@chromium.org>
      Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Reviewed-by: 's avatarLiviu Rau <liviurau@chromium.org>
      Reviewed-by: 's avatarMichael Hablich <hablich@chromium.org>
      Commit-Queue: Lutz Vahl <vahl@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66968}
      fb8f2663
    • Michael Lippautz's avatar
      cppgc: Conservative stack scan for non-Windows ia32 on clang · f00a02bb
      Michael Lippautz authored
      The difference to Chromium is that we support frame pointers and thus
      integrate better with debugging in e.g. gdb.
      
      Bug: chromium:1056170
      Change-Id: I2109744d07a7b3af158ed3e0fe731f890b192eee
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2129630
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
      Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66967}
      f00a02bb
    • Jakob Gruber's avatar
      [snapshot] Refactor the FixedRawData bytecode · 3b4b736a
      Jakob Gruber authored
      From recent discussions on https://crrev.com/c/2057355 it became clear
      that the FixedRawData serializer bytecodes need to be refactored. This
      CL
      
      - updates documentation to correctly specify that data length is given
      in kTaggedSize unit, and
      - changes the way smi roots are serialized s.t. deserialization no
      longer needs hacks to be correct on big-endian architectures and when
      (theoretically) deserializing sequences of smi roots. We do this by
      serializing the full object slot for smi roots instead of just the
      smi contents.
      
      Bug: v8:10374
      Change-Id: I190172d8030888e1950413e436e43b3d6e3b8fd5
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2130276
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Reviewed-by: 's avatarJunliang Yan <jyan@ca.ibm.com>
      Cr-Commit-Position: refs/heads/master@{#66966}
      3b4b736a
    • Zhao Jiazhong's avatar
      [mips][wasm-simd][liftoff] Implement add_saturate · 09982b6b
      Zhao Jiazhong authored
      Port 767401ba
      https://crrev.com/c/2116878
      
      Change-Id: I566a014a4d3021ac9b3576030c08fe0b46b33809
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132349Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
      Cr-Commit-Position: refs/heads/master@{#66965}
      09982b6b
    • Toon Verwaest's avatar
      [parser] Already break the expression scope chain for function parameters · 4561500e
      Toon Verwaest authored
      Otherwise we'll invalidly propagate information from default function parameters outwards to outer arrow scopes.
      
      Bug: chromium:1060023
      Change-Id: Id43ecb5e1d354d5250a80c2a4f7e3129759041d5
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134006
      Commit-Queue: Toon Verwaest <verwaest@chromium.org>
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Auto-Submit: Toon Verwaest <verwaest@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66964}
      4561500e
    • Mythri A's avatar
      [ic] Use the existing prototype validity cell when recomputing handlers · 800c294c
      Mythri A authored
      For keyed stores we recompute handlers based on the receiver maps
      we have seen. This is done so that we can transition to the most generic
      elements kind we have seen so far. When we recompute this handlers we
      get a new prototype validity cell and ignore the existing cell. This
      leads to incorrect behaviour if the cell was invalid. Recomputing the
      handler may be extra work which is not worth doing at this point. So
      we just reuse the existing validity cell and let the IC recompute the
      handler if we see the map again.
      
      Bug: chromium:1053939
      Change-Id: Ifc891d70f5a4b8b774238e12fb40e29b4d174e37
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2122032
      Commit-Queue: Mythri Alle <mythria@chromium.org>
      Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66963}
      800c294c
    • Tamer Tas's avatar
      [deps] revert "Update V8 DEPS." with a depot_tools bug · b8f14fc3
      Tamer Tas authored
      This reverts commit 8f68e392.
      
      Reason for revert: depot_tools started using Python3 by default with this deps roll, but it contained a Python3 bug. Reverting this and waiting for a new deps roll will fix the issue since the latest depot_tools contains the fix for this issue.
      
      Original change's description:
      > Update V8 DEPS.
      >
      > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/26e9d48..de373bb
      >
      > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/032c783..054d61d
      >
      > Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/2b2aec6..e3a49aa
      >
      > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/105a846..a560ab4
      >
      > TBR=machenbach@chromium.org,tmrts@chromium.org
      >
      > Change-Id: I04a2522f65cecb00308bdc0a8f7ed780fe4f3961
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2119950
      > Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
      > Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
      > Cr-Commit-Position: refs/heads/master@{#66851}
      
      TBR=machenbach@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com,tmrts@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: chromium:1065807
      Change-Id: I87281218c99c55503f577b9ab17b2d3b59792601
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132796
      Commit-Queue: Tamer Tas <tmrts@chromium.org>
      Reviewed-by: 's avatarTamer Tas <tmrts@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66962}
      b8f14fc3
    • Michael Lippautz's avatar
      cppgc: Do not rely on V8_TARGET_OS_* macro in trampoline stub file · 3d09332e
      Michael Lippautz authored
      Some embedders (e.g. ChromeOS) override the toolchain and do not
      provide such macros.
      
      Bug: chromium:1056170
      Change-Id: I3012af6dd7f59580d00e58608a228df562706414
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132798Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66961}
      3d09332e
    • Michael Lippautz's avatar
      cppgc: Ignore stack scan tests for TSAN · 6fc2a088
      Michael Lippautz authored
      Tbr: bikineev@chromium.org
      No-try: true
      Bug: chromium:1056170
      Change-Id: I4872b617b038bc647543a3dd5a435ad82c7291ba
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132792Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66960}
      6fc2a088
    • Zhao Jiazhong's avatar
      [mips][liftoff] Remove lambdas for binops with immediate · 58640de6
      Zhao Jiazhong authored
      Port a1bd7227
      https://crrev.com/c/2129631
      
      Original Commit Message:
      
        This is the same cleanup as in the previous CL, but for {EmitBinOpImm}.
        This requires a minor change in the name of the emit functions with
        immediate, to make them distinguishable from the emit functions with two
        registers. We just append an "i" to the functions with immediate.
      
      Change-Id: I5089097cb74e204002f0dfcfb6ed10d3ade4da0d
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132346Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
      Cr-Commit-Position: refs/heads/master@{#66959}
      58640de6
    • Michael Lippautz's avatar
      cppgc: Use inline asm to generate x64 stack scanning trampoline · be7e5766
      Michael Lippautz authored
      Use inline asm to generate the x64 PushAllRegistersAndIterateStack
      which is the trampoline for conservative stack scanning. Keep the
      function definition as C code to allow clang to generate the correct
      mangling for each platform.
      
      This approach has the benefit that it immediately works for all
      platforms that support clang.
      
      Bug: chromium:1056170
      Change-Id: Ic7a1c1b57e67ae1442bd8bda4e55d89112facfc7
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132787Reviewed-by: 's avatarOmer Katz <omerkatz@chromium.org>
      Reviewed-by: 's avatarAnton Bikineev <bikineev@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66958}
      be7e5766
  3. 01 Apr, 2020 17 commits