1. 04 Apr, 2016 10 commits
  2. 03 Apr, 2016 2 commits
    • thakis's avatar
      Let v8's configs have an effect in 64-bit Windows Chromium builds. · 42f2261c
      thakis authored
      The Chromium 64-bit Windows build uses "Debug_x64" and "Release_x64"
      as configs for some reason, so put v8's build config settings there
      too.
      
      Reduces e.g. the runtime of CrSettingsBrowserTest.CrSettingsTest from
      25s to 12s on my z840 in a 64-bit Chromium debug build
      (while also turning on handle zapping).
      
      BUG=chromium:586511
      LOG=n
      
      Review URL: https://codereview.chromium.org/1852913002
      
      Cr-Commit-Position: refs/heads/master@{#35224}
      42f2261c
    • v8-autoroll's avatar
      Update V8 DEPS. · f5a95d2b
      v8-autoroll authored
      Rolling v8/base/trace_event/common to ffb39885a2418caa7a6a6652471fe097732675bd
      
      Rolling v8/tools/clang to 8f7a85a108698ce7ed4fe1aa842efa61f195364e
      
      TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org
      
      Review URL: https://codereview.chromium.org/1859433002
      
      Cr-Commit-Position: refs/heads/master@{#35223}
      f5a95d2b
  3. 02 Apr, 2016 4 commits
    • machenbach's avatar
      Revert of Turbofan: Add MachineOperators for SIMD. (patchset #1 id:1 of... · 8625c489
      machenbach authored
      Revert of Turbofan: Add MachineOperators for SIMD. (patchset #1 id:1 of https://codereview.chromium.org/1850383002/ )
      
      Reason for revert:
      The first revert did help after all. See comments on:
      https://codereview.chromium.org/1848433003/
      
      Original issue's description:
      > Reland of Turbofan: Add MachineOperators for SIMD. (patchset #1 id:1 of https://codereview.chromium.org/1850373002/ )
      >
      > Reason for revert:
      > Revert didn't help. Still we need to figure out what bothers the msan build.
      >
      > Original issue's description:
      > > Revert of Turbofan: Add MachineOperators for SIMD. (patchset #5 id:70001 of https://codereview.chromium.org/1848433003/ )
      > >
      > > Reason for revert:
      > > [Sheriff] Speculative revert. Compile now times out on msan:
      > > https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/7705
      > >
      > > Original issue's description:
      > > > Turbofan: Add MachineOperators for SIMD.
      > > >
      > > > Takes the SIMD runtime intrinsics as a starting point for defining TF machine operators. The rationale for omitting functions is:
      > > >
      > > >  - UInt constructors. int and uint aren't distinguished in wasm.
      > > >  - Check functions.
      > > >  - 'FromXxxBits' functions. These are essentially casts.
      > > >  - Simple Load / Store functions. Existing load / store with SIMD type should work.
      > > >  - Uint functions, except where their behavior is bitwise different from the Int function.
      > > >
      > > > Skipped fns:
      > > >
      > > > Float32x4Check
      > > > Float32x4FromInt32x4Bits
      > > > Float32x4FromUint32x4Bits
      > > > Float32x4FromInt16x8Bits
      > > > Float32x4FromUint16x8Bits
      > > > Float32x4FromInt8x16Bits
      > > > Float32x4FromUint8x16Bits
      > > > Float32x4Load
      > > > Float32x4Store
      > > >
      > > > Int32x4Check
      > > > Int32x4FromUint32x4
      > > > Int32x4FromFloat32x4Bits
      > > > Int32x4FromUint32x4Bits
      > > > Int32x4FromInt16x8Bits
      > > > Int32x4FromUint16x8Bits
      > > > Int32x4FromInt8x16Bits
      > > > Int32x4FromUint8x16Bits
      > > > Int32x4Load
      > > > Int32x4Store
      > > >
      > > > CreateUint32x4
      > > > Uint32x4Check
      > > > Uint32x4ExtractLane
      > > > Uint32x4ReplaceLane
      > > > Uint32x4Add
      > > > Uint32x4Sub
      > > > Uint32x4Mul
      > > > Uint32x4And
      > > > Uint32x4Or
      > > > Uint32x4Xor
      > > > Uint32x4Not
      > > > Uint32x4Equal
      > > > Uint32x4NotEqual
      > > > Uint32x4Select
      > > > Uint32x4Swizzle
      > > > Uint32x4Shuffle
      > > > Uint32x4FromInt32x4
      > > > Uint32x4FromFloat32x4Bits
      > > > Uint32x4FromInt32x4Bits
      > > > Uint32x4FromInt16x8Bits
      > > > Uint32x4FromUint16x8Bits
      > > > Uint32x4FromInt8x16Bits
      > > > Uint32x4FromUint8x16Bits
      > > > Uint32x4Load
      > > > Uint32x4Load1
      > > > Uint32x4Load2
      > > > Uint32x4Load3
      > > > Uint32x4Store
      > > > Uint32x4Store1
      > > > Uint32x4Store2
      > > > Uint32x4Store3
      > > >
      > > > Bool32x4Check
      > > >
      > > > Int16x8Check
      > > > Int16x8FromUint16x8
      > > > Int16x8FromFloat32x4Bits
      > > > Int16x8FromInt32x4Bits
      > > > Int16x8FromUint32x4Bits
      > > > Int16x8FromUint16x8Bits
      > > > Int16x8FromInt8x16Bits
      > > > Int16x8FromUint8x16Bits
      > > > Int16x8Load
      > > > Int16x8Store
      > > >
      > > > CreateUint16x8
      > > > Uint16x8Check
      > > > Uint16x8ExtractLane
      > > > Uint16x8ReplaceLane
      > > > Uint16x8Add
      > > > Uint16x8Sub
      > > > Uint16x8Mul
      > > > Uint16x8And
      > > > Uint16x8Or
      > > > Uint16x8Xor
      > > > Uint16x8Not
      > > > Uint16x8Equal
      > > > Uint16x8NotEqual
      > > > Uint16x8Select
      > > > Uint16x8Swizzle
      > > > Uint16x8Shuffle
      > > > Uint16x8FromInt16x8
      > > > Uint16x8FromFloat32x4Bits
      > > > Uint16x8FromInt32x4Bits
      > > > Uint16x8FromUint32x4Bits
      > > > Uint16x8FromInt16x8Bits
      > > > Uint16x8FromInt8x16Bits
      > > > Uint16x8FromUint8x16Bits
      > > > Uint16x8Load
      > > > Uint16x8Store
      > > >
      > > > Bool16x8Check
      > > >
      > > > Int8x16Check
      > > > Int8x16FromUint8x16
      > > > Int8x16FromFloat32x4Bits
      > > > Int8x16FromInt32x4Bits
      > > > Int8x16FromUint32x4Bits
      > > > Int8x16FromInt16x8Bits
      > > > Int8x16FromUint16x8Bits
      > > > Int8x16FromUint8x16Bits
      > > > Int8x16Load
      > > > Int8x16Store
      > > >
      > > > CreateUint8x16
      > > > Uint8x16Check
      > > > Uint8x16ExtractLane
      > > > Uint8x16ReplaceLane
      > > > Uint8x16Add
      > > > Uint8x16Sub
      > > > Uint8x16Mul
      > > > Uint8x16And
      > > > Uint8x16Or
      > > > Uint8x16Xor
      > > > Uint8x16Not
      > > > Uint8x16Equal
      > > > Uint8x16NotEqual
      > > > Uint8x16Select
      > > > Uint8x16Swizzle
      > > > Uint8x16Shuffle
      > > > Uint8x16FromInt8x16
      > > > Uint8x16FromFloat32x4Bits
      > > > Uint8x16FromInt32x4Bits
      > > > Uint8x16FromUint32x4Bits
      > > > Uint8x16FromInt16x8Bits
      > > > Uint8x16FromUint16x8Bits
      > > > Uint8x16FromInt8x16Bits
      > > > Uint8x16Load
      > > > Uint8x16Store
      > > >
      > > > Bool8x16Check
      > > >
      > > > LOG=N
      > > > BUG=v8:4124
      > > >
      > > > Committed: https://crrev.com/3831d41e4ce7b162775732cb6ac1f8139e60aa30
      > > > Cr-Commit-Position: refs/heads/master@{#35213}
      > >
      > > TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      > > # Skipping CQ checks because original CL landed less than 1 days ago.
      > > NOPRESUBMIT=true
      > > NOTREECHECKS=true
      > > NOTRY=true
      > > BUG=v8:4124
      > >
      > > Committed: https://crrev.com/8481ec6016992e0b9ffb70137e9ff8fcd4135bba
      > > Cr-Commit-Position: refs/heads/master@{#35220}
      >
      > TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      > # Skipping CQ checks because original CL landed less than 1 days ago.
      > NOPRESUBMIT=true
      > NOTREECHECKS=true
      > NOTRY=true
      > BUG=v8:4124
      >
      > Committed: https://crrev.com/1f46e3ee8cec6b06b30b569e5688de095c4661ff
      > Cr-Commit-Position: refs/heads/master@{#35221}
      
      TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4124
      
      Review URL: https://codereview.chromium.org/1846413002
      
      Cr-Commit-Position: refs/heads/master@{#35222}
      8625c489
    • machenbach's avatar
      Reland of Turbofan: Add MachineOperators for SIMD. (patchset #1 id:1 of... · 1f46e3ee
      machenbach authored
      Reland of Turbofan: Add MachineOperators for SIMD. (patchset #1 id:1 of https://codereview.chromium.org/1850373002/ )
      
      Reason for revert:
      Revert didn't help. Still we need to figure out what bothers the msan build.
      
      Original issue's description:
      > Revert of Turbofan: Add MachineOperators for SIMD. (patchset #5 id:70001 of https://codereview.chromium.org/1848433003/ )
      >
      > Reason for revert:
      > [Sheriff] Speculative revert. Compile now times out on msan:
      > https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/7705
      >
      > Original issue's description:
      > > Turbofan: Add MachineOperators for SIMD.
      > >
      > > Takes the SIMD runtime intrinsics as a starting point for defining TF machine operators. The rationale for omitting functions is:
      > >
      > >  - UInt constructors. int and uint aren't distinguished in wasm.
      > >  - Check functions.
      > >  - 'FromXxxBits' functions. These are essentially casts.
      > >  - Simple Load / Store functions. Existing load / store with SIMD type should work.
      > >  - Uint functions, except where their behavior is bitwise different from the Int function.
      > >
      > > Skipped fns:
      > >
      > > Float32x4Check
      > > Float32x4FromInt32x4Bits
      > > Float32x4FromUint32x4Bits
      > > Float32x4FromInt16x8Bits
      > > Float32x4FromUint16x8Bits
      > > Float32x4FromInt8x16Bits
      > > Float32x4FromUint8x16Bits
      > > Float32x4Load
      > > Float32x4Store
      > >
      > > Int32x4Check
      > > Int32x4FromUint32x4
      > > Int32x4FromFloat32x4Bits
      > > Int32x4FromUint32x4Bits
      > > Int32x4FromInt16x8Bits
      > > Int32x4FromUint16x8Bits
      > > Int32x4FromInt8x16Bits
      > > Int32x4FromUint8x16Bits
      > > Int32x4Load
      > > Int32x4Store
      > >
      > > CreateUint32x4
      > > Uint32x4Check
      > > Uint32x4ExtractLane
      > > Uint32x4ReplaceLane
      > > Uint32x4Add
      > > Uint32x4Sub
      > > Uint32x4Mul
      > > Uint32x4And
      > > Uint32x4Or
      > > Uint32x4Xor
      > > Uint32x4Not
      > > Uint32x4Equal
      > > Uint32x4NotEqual
      > > Uint32x4Select
      > > Uint32x4Swizzle
      > > Uint32x4Shuffle
      > > Uint32x4FromInt32x4
      > > Uint32x4FromFloat32x4Bits
      > > Uint32x4FromInt32x4Bits
      > > Uint32x4FromInt16x8Bits
      > > Uint32x4FromUint16x8Bits
      > > Uint32x4FromInt8x16Bits
      > > Uint32x4FromUint8x16Bits
      > > Uint32x4Load
      > > Uint32x4Load1
      > > Uint32x4Load2
      > > Uint32x4Load3
      > > Uint32x4Store
      > > Uint32x4Store1
      > > Uint32x4Store2
      > > Uint32x4Store3
      > >
      > > Bool32x4Check
      > >
      > > Int16x8Check
      > > Int16x8FromUint16x8
      > > Int16x8FromFloat32x4Bits
      > > Int16x8FromInt32x4Bits
      > > Int16x8FromUint32x4Bits
      > > Int16x8FromUint16x8Bits
      > > Int16x8FromInt8x16Bits
      > > Int16x8FromUint8x16Bits
      > > Int16x8Load
      > > Int16x8Store
      > >
      > > CreateUint16x8
      > > Uint16x8Check
      > > Uint16x8ExtractLane
      > > Uint16x8ReplaceLane
      > > Uint16x8Add
      > > Uint16x8Sub
      > > Uint16x8Mul
      > > Uint16x8And
      > > Uint16x8Or
      > > Uint16x8Xor
      > > Uint16x8Not
      > > Uint16x8Equal
      > > Uint16x8NotEqual
      > > Uint16x8Select
      > > Uint16x8Swizzle
      > > Uint16x8Shuffle
      > > Uint16x8FromInt16x8
      > > Uint16x8FromFloat32x4Bits
      > > Uint16x8FromInt32x4Bits
      > > Uint16x8FromUint32x4Bits
      > > Uint16x8FromInt16x8Bits
      > > Uint16x8FromInt8x16Bits
      > > Uint16x8FromUint8x16Bits
      > > Uint16x8Load
      > > Uint16x8Store
      > >
      > > Bool16x8Check
      > >
      > > Int8x16Check
      > > Int8x16FromUint8x16
      > > Int8x16FromFloat32x4Bits
      > > Int8x16FromInt32x4Bits
      > > Int8x16FromUint32x4Bits
      > > Int8x16FromInt16x8Bits
      > > Int8x16FromUint16x8Bits
      > > Int8x16FromUint8x16Bits
      > > Int8x16Load
      > > Int8x16Store
      > >
      > > CreateUint8x16
      > > Uint8x16Check
      > > Uint8x16ExtractLane
      > > Uint8x16ReplaceLane
      > > Uint8x16Add
      > > Uint8x16Sub
      > > Uint8x16Mul
      > > Uint8x16And
      > > Uint8x16Or
      > > Uint8x16Xor
      > > Uint8x16Not
      > > Uint8x16Equal
      > > Uint8x16NotEqual
      > > Uint8x16Select
      > > Uint8x16Swizzle
      > > Uint8x16Shuffle
      > > Uint8x16FromInt8x16
      > > Uint8x16FromFloat32x4Bits
      > > Uint8x16FromInt32x4Bits
      > > Uint8x16FromUint32x4Bits
      > > Uint8x16FromInt16x8Bits
      > > Uint8x16FromUint16x8Bits
      > > Uint8x16FromInt8x16Bits
      > > Uint8x16Load
      > > Uint8x16Store
      > >
      > > Bool8x16Check
      > >
      > > LOG=N
      > > BUG=v8:4124
      > >
      > > Committed: https://crrev.com/3831d41e4ce7b162775732cb6ac1f8139e60aa30
      > > Cr-Commit-Position: refs/heads/master@{#35213}
      >
      > TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      > # Skipping CQ checks because original CL landed less than 1 days ago.
      > NOPRESUBMIT=true
      > NOTREECHECKS=true
      > NOTRY=true
      > BUG=v8:4124
      >
      > Committed: https://crrev.com/8481ec6016992e0b9ffb70137e9ff8fcd4135bba
      > Cr-Commit-Position: refs/heads/master@{#35220}
      
      TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4124
      
      Review URL: https://codereview.chromium.org/1850383002
      
      Cr-Commit-Position: refs/heads/master@{#35221}
      1f46e3ee
    • machenbach's avatar
      Revert of Turbofan: Add MachineOperators for SIMD. (patchset #5 id:70001 of... · 8481ec60
      machenbach authored
      Revert of Turbofan: Add MachineOperators for SIMD. (patchset #5 id:70001 of https://codereview.chromium.org/1848433003/ )
      
      Reason for revert:
      [Sheriff] Speculative revert. Compile now times out on msan:
      https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/7705
      
      Original issue's description:
      > Turbofan: Add MachineOperators for SIMD.
      >
      > Takes the SIMD runtime intrinsics as a starting point for defining TF machine operators. The rationale for omitting functions is:
      >
      >  - UInt constructors. int and uint aren't distinguished in wasm.
      >  - Check functions.
      >  - 'FromXxxBits' functions. These are essentially casts.
      >  - Simple Load / Store functions. Existing load / store with SIMD type should work.
      >  - Uint functions, except where their behavior is bitwise different from the Int function.
      >
      > Skipped fns:
      >
      > Float32x4Check
      > Float32x4FromInt32x4Bits
      > Float32x4FromUint32x4Bits
      > Float32x4FromInt16x8Bits
      > Float32x4FromUint16x8Bits
      > Float32x4FromInt8x16Bits
      > Float32x4FromUint8x16Bits
      > Float32x4Load
      > Float32x4Store
      >
      > Int32x4Check
      > Int32x4FromUint32x4
      > Int32x4FromFloat32x4Bits
      > Int32x4FromUint32x4Bits
      > Int32x4FromInt16x8Bits
      > Int32x4FromUint16x8Bits
      > Int32x4FromInt8x16Bits
      > Int32x4FromUint8x16Bits
      > Int32x4Load
      > Int32x4Store
      >
      > CreateUint32x4
      > Uint32x4Check
      > Uint32x4ExtractLane
      > Uint32x4ReplaceLane
      > Uint32x4Add
      > Uint32x4Sub
      > Uint32x4Mul
      > Uint32x4And
      > Uint32x4Or
      > Uint32x4Xor
      > Uint32x4Not
      > Uint32x4Equal
      > Uint32x4NotEqual
      > Uint32x4Select
      > Uint32x4Swizzle
      > Uint32x4Shuffle
      > Uint32x4FromInt32x4
      > Uint32x4FromFloat32x4Bits
      > Uint32x4FromInt32x4Bits
      > Uint32x4FromInt16x8Bits
      > Uint32x4FromUint16x8Bits
      > Uint32x4FromInt8x16Bits
      > Uint32x4FromUint8x16Bits
      > Uint32x4Load
      > Uint32x4Load1
      > Uint32x4Load2
      > Uint32x4Load3
      > Uint32x4Store
      > Uint32x4Store1
      > Uint32x4Store2
      > Uint32x4Store3
      >
      > Bool32x4Check
      >
      > Int16x8Check
      > Int16x8FromUint16x8
      > Int16x8FromFloat32x4Bits
      > Int16x8FromInt32x4Bits
      > Int16x8FromUint32x4Bits
      > Int16x8FromUint16x8Bits
      > Int16x8FromInt8x16Bits
      > Int16x8FromUint8x16Bits
      > Int16x8Load
      > Int16x8Store
      >
      > CreateUint16x8
      > Uint16x8Check
      > Uint16x8ExtractLane
      > Uint16x8ReplaceLane
      > Uint16x8Add
      > Uint16x8Sub
      > Uint16x8Mul
      > Uint16x8And
      > Uint16x8Or
      > Uint16x8Xor
      > Uint16x8Not
      > Uint16x8Equal
      > Uint16x8NotEqual
      > Uint16x8Select
      > Uint16x8Swizzle
      > Uint16x8Shuffle
      > Uint16x8FromInt16x8
      > Uint16x8FromFloat32x4Bits
      > Uint16x8FromInt32x4Bits
      > Uint16x8FromUint32x4Bits
      > Uint16x8FromInt16x8Bits
      > Uint16x8FromInt8x16Bits
      > Uint16x8FromUint8x16Bits
      > Uint16x8Load
      > Uint16x8Store
      >
      > Bool16x8Check
      >
      > Int8x16Check
      > Int8x16FromUint8x16
      > Int8x16FromFloat32x4Bits
      > Int8x16FromInt32x4Bits
      > Int8x16FromUint32x4Bits
      > Int8x16FromInt16x8Bits
      > Int8x16FromUint16x8Bits
      > Int8x16FromUint8x16Bits
      > Int8x16Load
      > Int8x16Store
      >
      > CreateUint8x16
      > Uint8x16Check
      > Uint8x16ExtractLane
      > Uint8x16ReplaceLane
      > Uint8x16Add
      > Uint8x16Sub
      > Uint8x16Mul
      > Uint8x16And
      > Uint8x16Or
      > Uint8x16Xor
      > Uint8x16Not
      > Uint8x16Equal
      > Uint8x16NotEqual
      > Uint8x16Select
      > Uint8x16Swizzle
      > Uint8x16Shuffle
      > Uint8x16FromInt8x16
      > Uint8x16FromFloat32x4Bits
      > Uint8x16FromInt32x4Bits
      > Uint8x16FromUint32x4Bits
      > Uint8x16FromInt16x8Bits
      > Uint8x16FromUint16x8Bits
      > Uint8x16FromInt8x16Bits
      > Uint8x16Load
      > Uint8x16Store
      >
      > Bool8x16Check
      >
      > LOG=N
      > BUG=v8:4124
      >
      > Committed: https://crrev.com/3831d41e4ce7b162775732cb6ac1f8139e60aa30
      > Cr-Commit-Position: refs/heads/master@{#35213}
      
      TBR=bradnelson@chromium.org,gdeepti@chromium.org,titzer@chromium.org,mtrofin@chromium.org,bradnelson@google.com,bmeurer@chromium.org,bbudge@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4124
      
      Review URL: https://codereview.chromium.org/1850373002
      
      Cr-Commit-Position: refs/heads/master@{#35220}
      8481ec60
    • v8-autoroll's avatar
      Update V8 DEPS. · edc8acff
      v8-autoroll authored
      Rolling v8/base/trace_event/common to 0fc98828a66ee4d69b9524e4967b9287b7b8eea0
      
      Rolling v8/build/gyp to 697933c2e3b3ffdd6949df3c2fa3613489e01175
      
      Rolling v8/tools/clang to 87058e09f9c547eb5d00cb8ca666c6aec203a117
      
      TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org
      
      Review URL: https://codereview.chromium.org/1853783004
      
      Cr-Commit-Position: refs/heads/master@{#35219}
      edc8acff
  4. 01 Apr, 2016 24 commits
    • jyan's avatar
      S390: Fix '[ic] Use the CallFunction builtin to invoke accessors.' · 9fbc04f8
      jyan authored
      Fix native compilation error due to gcc error "call of overloaded
      ‘Operand(int)’ is ambiguous"
      
      R=joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1847303004
      
      Cr-Commit-Position: refs/heads/master@{#35218}
      9fbc04f8
    • jyan's avatar
      S390: [ic] Use the CallFunction builtin to invoke accessors. · 6c38fde9
      jyan authored
      port 6df9a22c
      
      Original Commit Message:
          The HandlerCompiler did not properly handle the weird edge case when a
          sloppy mode function was installed as an accessor on one of the value
          wrapper prototypes and then accessed via a load from a primitive value.
          In this case we just passed the primitive value untouched instead of
          properly wrapping it first. The CallFunction builtin properly deals with
          all the funny edge cases, so we use it instead of duplicating almost all
          of the logic here (the performance difference is neglible).
      
      R=verwaest@chromium.org, bmeurer@chromium.org, joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com
      BUG=chromium:599073, v8:4413
      LOG=n
      
      Review URL: https://codereview.chromium.org/1849233003
      
      Cr-Commit-Position: refs/heads/master@{#35217}
      6c38fde9
    • mbrandy's avatar
      PPC: [turbofan] Optimize loading 64-bit SMIs. · 6ae6d3f8
      mbrandy authored
      Especially when loading and untagging SMIs within code stubs,
      instances of the following pattern appear in the generated code:
      
          ld    <dst>, <offset>(<base>)
          sradi <dst>,<dst>,32
      
      This CL changes that code to:
      
          lwa   <dst>, <SmiWordOffset(offset)>(<base>)
      
      R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1855533002
      
      Cr-Commit-Position: refs/heads/master@{#35216}
      6ae6d3f8
    • jyan's avatar
      S390: Assembler changes for enabling GrowHeap in Wasm · d8cd323d
      jyan authored
      Port e1a7c1e7
      
      Original commit message:
          - New RelocInfo mode WASM_MEMORY_REFERENCE as a marker for wasm code objects that need to be relocated on a heap change
          - RelocInfo mode recorded for immediates that use the memory buffer as base
          - Tests to verify address patching works
      
      R=joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1848353002
      
      Cr-Commit-Position: refs/heads/master@{#35215}
      d8cd323d
    • mbrandy's avatar
      PPC: [ic] Use the CallFunction builtin to invoke accessors. · 2799cd15
      mbrandy authored
      Port 6df9a22c
      
      Original commit message:
          The HandlerCompiler did not properly handle the weird edge case when a
          sloppy mode function was installed as an accessor on one of the value
          wrapper prototypes and then accessed via a load from a primitive value.
          In this case we just passed the primitive value untouched instead of
          properly wrapping it first. The CallFunction builtin properly deals with
          all the funny edge cases, so we use it instead of duplicating almost all
          of the logic here (the performance difference is neglible).
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=chromium:599073, v8:4413
      LOG=n
      
      Review URL: https://codereview.chromium.org/1846953006
      
      Cr-Commit-Position: refs/heads/master@{#35214}
      2799cd15
    • bbudge's avatar
      Turbofan: Add MachineOperators for SIMD. · 3831d41e
      bbudge authored
      IMPORTANT NOTE: This will likely be macroized to reduce boilerplate. Publishing now to start discussion about approach, which ops are needed, etc. Omitted functions are commented out in machine-operator.h so start there.
      
      Takes the SIMD runtime intrinsics as a starting point for defining TF machine operators. The rationale for omitting functions is:
      
       - UInt constructors. int and uint aren't distinguished in wasm.
       - Check functions.
       - 'FromXxxBits' functions. These are essentially casts.
       - Simple Load / Store functions. Existing load / store with SIMD type should work.
       - Uint functions, except where their behavior is bitwise different from the Int function.
      
      Skipped fns:
      
      Float32x4Check
      Float32x4FromInt32x4Bits
      Float32x4FromUint32x4Bits
      Float32x4FromInt16x8Bits
      Float32x4FromUint16x8Bits
      Float32x4FromInt8x16Bits
      Float32x4FromUint8x16Bits
      Float32x4Load
      Float32x4Store
      
      Int32x4Check
      Int32x4FromUint32x4
      Int32x4FromFloat32x4Bits
      Int32x4FromUint32x4Bits
      Int32x4FromInt16x8Bits
      Int32x4FromUint16x8Bits
      Int32x4FromInt8x16Bits
      Int32x4FromUint8x16Bits
      Int32x4Load
      Int32x4Store
      
      CreateUint32x4
      Uint32x4Check
      Uint32x4ExtractLane
      Uint32x4ReplaceLane
      Uint32x4Add
      Uint32x4Sub
      Uint32x4Mul
      Uint32x4And
      Uint32x4Or
      Uint32x4Xor
      Uint32x4Not
      Uint32x4Equal
      Uint32x4NotEqual
      Uint32x4Select
      Uint32x4Swizzle
      Uint32x4Shuffle
      Uint32x4FromInt32x4
      Uint32x4FromFloat32x4Bits
      Uint32x4FromInt32x4Bits
      Uint32x4FromInt16x8Bits
      Uint32x4FromUint16x8Bits
      Uint32x4FromInt8x16Bits
      Uint32x4FromUint8x16Bits
      Uint32x4Load
      Uint32x4Load1
      Uint32x4Load2
      Uint32x4Load3
      Uint32x4Store
      Uint32x4Store1
      Uint32x4Store2
      Uint32x4Store3
      
      Bool32x4Check
      
      Int16x8Check
      Int16x8FromUint16x8
      Int16x8FromFloat32x4Bits
      Int16x8FromInt32x4Bits
      Int16x8FromUint32x4Bits
      Int16x8FromUint16x8Bits
      Int16x8FromInt8x16Bits
      Int16x8FromUint8x16Bits
      Int16x8Load
      Int16x8Store
      
      CreateUint16x8
      Uint16x8Check
      Uint16x8ExtractLane
      Uint16x8ReplaceLane
      Uint16x8Add
      Uint16x8Sub
      Uint16x8Mul
      Uint16x8And
      Uint16x8Or
      Uint16x8Xor
      Uint16x8Not
      Uint16x8Equal
      Uint16x8NotEqual
      Uint16x8Select
      Uint16x8Swizzle
      Uint16x8Shuffle
      Uint16x8FromInt16x8
      Uint16x8FromFloat32x4Bits
      Uint16x8FromInt32x4Bits
      Uint16x8FromUint32x4Bits
      Uint16x8FromInt16x8Bits
      Uint16x8FromInt8x16Bits
      Uint16x8FromUint8x16Bits
      Uint16x8Load
      Uint16x8Store
      
      Bool16x8Check
      
      Int8x16Check
      Int8x16FromUint8x16
      Int8x16FromFloat32x4Bits
      Int8x16FromInt32x4Bits
      Int8x16FromUint32x4Bits
      Int8x16FromInt16x8Bits
      Int8x16FromUint16x8Bits
      Int8x16FromUint8x16Bits
      Int8x16Load
      Int8x16Store
      
      CreateUint8x16
      Uint8x16Check
      Uint8x16ExtractLane
      Uint8x16ReplaceLane
      Uint8x16Add
      Uint8x16Sub
      Uint8x16Mul
      Uint8x16And
      Uint8x16Or
      Uint8x16Xor
      Uint8x16Not
      Uint8x16Equal
      Uint8x16NotEqual
      Uint8x16Select
      Uint8x16Swizzle
      Uint8x16Shuffle
      Uint8x16FromInt8x16
      Uint8x16FromFloat32x4Bits
      Uint8x16FromInt32x4Bits
      Uint8x16FromUint32x4Bits
      Uint8x16FromInt16x8Bits
      Uint8x16FromUint16x8Bits
      Uint8x16FromInt8x16Bits
      Uint8x16Load
      Uint8x16Store
      
      Bool8x16Check
      
      LOG=N
      BUG=v8:4124
      
      Review URL: https://codereview.chromium.org/1848433003
      
      Cr-Commit-Position: refs/heads/master@{#35213}
      3831d41e
    • akos.palfi's avatar
      MIPS64: Fix '[turbofan] Frame elision for code stubs.' · 3e284d19
      akos.palfi authored
      Port 53d51c52
      
      TEST=mjsunit/es6/array-copywithin, mjsunit/harmony/array-species
      BUG=
      
      Review URL: https://codereview.chromium.org/1847073003
      
      Cr-Commit-Position: refs/heads/master@{#35212}
      3e284d19
    • bryleun's avatar
      S390: Implemented SLBR in s390 simulator. · 6dfcaafe
      bryleun authored
      This CL implements the SLBR, subtract logical 32-bit int with borrow, instruction in the s390 simulator.
      
      R=michael_dawson@ca.ibm.com,jyan@ca.ibm.com,mbrandy@us.ibm.com,joransiu@ca.ibm.com,
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1850163004
      
      Cr-Commit-Position: refs/heads/master@{#35211}
      6dfcaafe
    • mbrandy's avatar
      Revert of PPC: [compiler] Add relocatable pointer constants for wasm memory... · bdfe29af
      mbrandy authored
      Revert of PPC: [compiler] Add relocatable pointer constants for wasm memory references. (patchset #1 id:1 of https://codereview.chromium.org/1851543004/ )
      
      Reason for revert:
      Original commit reverted.
      
      Original issue's description:
      > PPC: [compiler] Add relocatable pointer constants for wasm memory references.
      >
      > Port eb5fe0df
      >
      > Original commit message:
      >     Add relocatable pointers for wasm memory references that need to
      >     be updated when wasm GrowMemory is used. Code generator changes to
      >     accept relocatable constants as immediates.
      >
      > R=gdeepti@google.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      > BUG=
      >
      > Committed: https://crrev.com/ba053c4620c3b91ddc540f733f8b4dd9a792bb13
      > Cr-Commit-Position: refs/heads/master@{#35203}
      
      TBR=gdeepti@google.com,joransiu@ca.ibm.com,jyan@ca.ibm.com,michael_dawson@ca.ibm.com
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=
      
      Review URL: https://codereview.chromium.org/1851823002
      
      Cr-Commit-Position: refs/heads/master@{#35210}
      bdfe29af
    • cbruni's avatar
      [elements] Avoid using IsKey in loops · ba5a6196
      cbruni authored
      IsKey is much slower compare to direct comparisons with undefined_value
      and the_hole_value.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1847183004
      
      Cr-Commit-Position: refs/heads/master@{#35209}
      ba5a6196
    • bmeurer's avatar
      [builtins] Migrate Math.clz32 to a TurboFan builtin. · eaa92feb
      bmeurer authored
      This allows us to remove the troublesome %_MathClz32 intrinsic and also
      allows us to utilize the functionality that is already available in
      TurboFan. Also introduce a proper NumberClz32 operator so we don't need
      to introduce a machine operator at the JS level.
      
      R=epertoso@chromium.org
      
      Review URL: https://codereview.chromium.org/1852553003
      
      Cr-Commit-Position: refs/heads/master@{#35208}
      eaa92feb
    • jyan's avatar
      S390: [wasm] Fixed float-to-int conversion tests. · 652853da
      jyan authored
      port ac7f0e2b
      
      Original Commit Message:
         *) For all tests the input validation was incorrect, i.e. some values
         were considered invalid although they were valid. The problem was that
         values which are outside int range can get in range through truncation.
      
         *) Removed an assertion in the x64 code generation of
         TruncateFloat64ToUint32 which trapped on negative inputs.
      
         *) Introduced a new TF operator TruncateFloat32ToUint32 which does
         the same as ChangeFloat32ToUint32 but does not trap on negative inputs.
      
      R=titzer@chromium.org, ahaas@chromium.org, joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1844053005
      
      Cr-Commit-Position: refs/heads/master@{#35207}
      652853da
    • joransiu's avatar
      S390: Guard RISBG usage with facility check · c2791380
      joransiu authored
      A use of risbg instruction is not guarded by the corresponding
      GENERAL_INSTR_EXT facility check.  This will result in an illegal
      instruction when running on hardware without that facility installed
      (i.e. z9).
      
      R=jyan@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1848533006
      
      Cr-Commit-Position: refs/heads/master@{#35206}
      c2791380
    • hpayer's avatar
      [heap] Abort AdvanceIncrementalMarking when we do not make marking progress. · 3283d6d3
      hpayer authored
      BUG=v8:4804
      LOG=n
      
      Review URL: https://codereview.chromium.org/1853463004
      
      Cr-Commit-Position: refs/heads/master@{#35205}
      3283d6d3
    • mbrandy's avatar
      PPC: Assembler changes for enabling GrowHeap in Wasm · 58f2be43
      mbrandy authored
      Port e1a7c1e7
      
      Original commit message:
          - New RelocInfo mode WASM_MEMORY_REFERENCE as a marker for wasm code objects that need to be relocated on a heap change
          - RelocInfo mode recorded for immediates that use the memory buffer as base
          - Tests to verify address patching works
      
      R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1845283004
      
      Cr-Commit-Position: refs/heads/master@{#35204}
      58f2be43
    • mbrandy's avatar
      PPC: [compiler] Add relocatable pointer constants for wasm memory references. · ba053c46
      mbrandy authored
      Port eb5fe0df
      
      Original commit message:
          Add relocatable pointers for wasm memory references that need to
          be updated when wasm GrowMemory is used. Code generator changes to
          accept relocatable constants as immediates.
      
      R=gdeepti@google.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1851543004
      
      Cr-Commit-Position: refs/heads/master@{#35203}
      ba053c46
    • mythria's avatar
      [Interpreter] Handles BytecodeArrays when scanning objects in heap. · 8a9ada48
      mythria authored
      Handles bytecodeArray Objects when verifying the heap and also when
      collecting code statistics. The changes include:
      1. BytecodeArrays could be a part of the large object space. When
      verifying the large object space we should also allow BytecodeArray
      objects.
      2. Adds support for BytecodeArrays when collecting code statistics.
      
      BUG=v8:4280,chromium:599001
      LOG=N
      
      Review URL: https://codereview.chromium.org/1850443006
      
      Cr-Commit-Position: refs/heads/master@{#35202}
      8a9ada48
    • oth's avatar
      [interpreter] A few code coverage improvements. · 0c32e98e
      oth authored
      Improves code coverage of bytecode array builder and constant
      array builder.
      
      Fixes initial index for constant pool slice for kQuad operands.
      
      BUG=v8:4280,chromium:599000
      LOG=N
      TBR=rmcilroy@chromium.org
      
      Review URL: https://codereview.chromium.org/1845313002
      
      Cr-Commit-Position: refs/heads/master@{#35201}
      0c32e98e
    • cbruni's avatar
      Adding %_NewObject intrinsic · 942f255f
      cbruni authored
      This should help speeding up Promise and RegExp instantiations substantially.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1850643002
      
      Cr-Commit-Position: refs/heads/master@{#35200}
      942f255f
    • epertoso's avatar
      [ia32] Byte and word memory operands in ia32 cmp/test. · 3dd3beb0
      epertoso authored
      Currently, if the size of two cmp or test operands is a byte or a word, we sign-extend or zero-extend each of them into a 32-bit register before doing the comparison, even when the conditions for the use of a memory operand are met.
      
      This CL makes it possible to load only one of them into a register and address the other as a memory operand.
      
      The tricky bit is that, unlike as in the x64 counterpart http://crrev.com/1780193003, not all registers can be accessed as bytes.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1845603002
      
      Cr-Commit-Position: refs/heads/master@{#35199}
      3dd3beb0
    • hablich's avatar
      Revert of Ship --harmony-regexp-exec (patchset #3 id:40001 of... · 701911f9
      hablich authored
      Revert of Ship --harmony-regexp-exec (patchset #3 id:40001 of https://codereview.chromium.org/1847103002/ )
      
      Reason for revert:
      breaks some chromium browser_tests: https://codereview.chromium.org/1848233002/
      
      Original issue's description:
      > Ship --harmony-regexp-exec
      >
      > There are still spec compliance fixes to be made, but this patch
      > turns the flag to shipping to make sure we get more canary coverage
      > and performance data from the bots.
      >
      > BUG=v8:4602
      > LOG=y
      >
      > Committed: https://crrev.com/84492bb66b340f4e0df36758e98fddbb10b5d1dc
      > Cr-Commit-Position: refs/heads/master@{#35181}
      
      TBR=littledan@chromium.org,adamk@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4602
      
      Review URL: https://codereview.chromium.org/1852673003
      
      Cr-Commit-Position: refs/heads/master@{#35198}
      701911f9
    • bmeurer's avatar
      [turbofan] Introduce JSToInteger and JSToLength operators. · 10b365ab
      bmeurer authored
      These operators will be easier to optimize, and we can remove some
      unnecessary clutter from the intrinsic lowering.
      
      Drive-by-cleanup: Some alpha sorting of the type conversion operator
      business.
      
      R=mstarzinger@chromium.org
      
      Review URL: https://codereview.chromium.org/1848243002
      
      Cr-Commit-Position: refs/heads/master@{#35197}
      10b365ab
    • jochen's avatar
      Expose a lower bound of malloc'd memory via heap statistics · cb7aa79b
      jochen authored
      We expect that the majority of malloc'd memory held by V8 is allocated
      in Zone objects. Introduce an Allocator class that is used by Zones to
      manage memory, and allows for querying the current usage.
      
      BUG=none
      R=titzer@chromium.org,bmeurer@chromium.org,jarin@chromium.org
      LOG=n
      TBR=rossberg@chromium.org
      
      Review URL: https://codereview.chromium.org/1847543002
      
      Cr-Commit-Position: refs/heads/master@{#35196}
      cb7aa79b
    • ahaas's avatar
      Fixed rotate left on windows. · 3ffee875
      ahaas authored
      R=titzer@chromium.org, bmeurer@chromium.org
      
      Review URL: https://codereview.chromium.org/1847413002
      
      Cr-Commit-Position: refs/heads/master@{#35195}
      3ffee875