1. 19 Dec, 2018 1 commit
    • Clemens Hammacher's avatar
      [cleanup] Fix include guards of simulators · bf2b5d0b
      Clemens Hammacher authored
      The platform-specific simulators are only included on the respective
      hardware, so no need to guard against other platforms.
      Also, unify where the USE_SIMULATOR macro is evaluated. Make it cover
      the whole implementation file.
      Also, make sure to include the respective header file first, as
      suggested by the style guide, and fix up includes in general.
      
      R=ishell@chromium.org
      
      Bug: v8:8562, v8:7490
      Change-Id: Ifc6a87030364eab1e6a6fcbda008607ccd1c1f2f
      Reviewed-on: https://chromium-review.googlesource.com/c/1384090Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58365}
      bf2b5d0b
  2. 14 Apr, 2018 1 commit
    • Jakob Kummerow's avatar
      [ubsan] Change Address typedef to uintptr_t · 2459046c
      Jakob Kummerow authored
      The "Address" type is V8's general-purpose type for manipulating memory
      addresses. Per the C++ spec, pointer arithmetic and pointer comparisons
      are undefined behavior except within the same array; since we generally
      don't operate within a C++ array, our general-purpose type shouldn't be
      a pointer type.
      
      Bug: v8:3770
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel
      Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779
      Reviewed-on: https://chromium-review.googlesource.com/988657
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52601}
      2459046c
  3. 09 Feb, 2018 1 commit
  4. 09 Jan, 2018 1 commit
  5. 08 Jan, 2018 1 commit
    • Clemens Hammacher's avatar
      [simulator] Make Call variadic · a3baa353
      Clemens Hammacher authored
      In order to remove the CALL_GENERATED_CODE macro, it helps a lot to
      unify the interfaces of the simulators and make the Call method variadic
      in the number of arguments.
      This CL does that for each simulator. A follow-up CL will then
      completely remove the CALL_GENERATED_CODE macro and replace uses with
      the (new) GeneratedCode wrapper.
      
      R=mstarzinger@chromium.org
      
      Bug: v8:7182
      Change-Id: I1f81445ec2faba30f0bd233b022ae1f0fae4e96f
      Reviewed-on: https://chromium-review.googlesource.com/850873
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50413}
      a3baa353
  6. 15 Dec, 2017 1 commit
  7. 13 Dec, 2017 1 commit
    • Michael Starzinger's avatar
      [simulator] Refactor redirections to be process-wide. · f4dde200
      Michael Starzinger authored
      This refactors the list of redirections of runtime call targets that
      simulators maintain to be process-wide (as opposed to be per Isolate).
      Such redirections are used for static C++ call targets which themselves
      are process-wide, which makes this model a closer fit. Access is already
      properly synchronized via a mutex.
      
      Along the way this also introduces the {SimulatorBase} class as a common
      base class for all simulator implementations.
      
      R=clemensh@chromium.org
      
      Change-Id: Iae8602c44b1b34cb916dde2b22c9403b0496b3d4
      Reviewed-on: https://chromium-review.googlesource.com/823966
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50074}
      f4dde200
  8. 11 Dec, 2017 2 commits
  9. 02 May, 2017 1 commit
    • neis's avatar
      [simulator] Make reference redirection thread-safe. · 34e79456
      neis authored
      In the simulators, the ExternalReference constructor rewrites external
      addresses, which involves mutating a linked list rooted in the isolate.
      
      We already construct external references concurrently (at least in Turbofan),
      but the list mutation was not thread-safe (though no crashes are known). This
      CL adds the necessary locking.
      
      BUG=v8:6048
      
      Review-Url: https://codereview.chromium.org/2852983002
      Cr-Commit-Position: refs/heads/master@{#45014}
      34e79456
  10. 21 Apr, 2017 5 commits
  11. 04 Apr, 2017 1 commit
  12. 12 Mar, 2017 1 commit
  13. 10 Mar, 2017 1 commit
  14. 17 Feb, 2017 1 commit
  15. 13 Feb, 2017 1 commit
  16. 21 Dec, 2016 1 commit
  17. 19 Dec, 2016 1 commit
  18. 16 Dec, 2016 1 commit
  19. 24 Nov, 2016 1 commit
  20. 30 Sep, 2016 1 commit
  21. 29 Jul, 2016 1 commit
  22. 09 Jun, 2016 1 commit
    • lpy's avatar
      Move hashmap into src/base. · 2fd55667
      lpy authored
      We ported hashmap.h into libsampler as a workaround before, so the main focus of
      this patch is to reduce code duplication. This patch moves the hashmap into
      src/base as well as creates DefaultAllocationPolicy using malloc and free.
      
      BUG=v8:5050
      LOG=n
      
      Review-Url: https://codereview.chromium.org/2010243003
      Cr-Commit-Position: refs/heads/master@{#36873}
      2fd55667
  23. 18 Apr, 2016 1 commit
  24. 01 Apr, 2016 1 commit
    • bryleun's avatar
      S390: Implemented ALCR in S390 simulator. · 8760b602
      bryleun authored
      This CL implements the ALCR, add logical 32-bit integer with carry, instruction in the s390 simulator.
      
      Some 64-bit operations in the 4-byte arithmetic section of the s390 simulator have been refactored into a separate function to stay below 500 lines.
      
      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/1846673003
      
      Cr-Commit-Position: refs/heads/master@{#35184}
      8760b602
  25. 28 Mar, 2016 1 commit
    • bryleun's avatar
      S390: Fixed s390 simulation check for underflow in subtraction. · 0d24a0fc
      bryleun authored
      Clang optimizes away CheckOverflowForIntSub at any opt
      level (includes -O1, -O2, -O3) into a false statement,
      resulting in incorrect values being returned. As the C++
      standard considers overflows to be undefined behaviour,
      this is technically correct as compilers can assume that
      overflows never occur, but problematic in our case (where
      overflows do occur, and a specific result is expected).
      
      This change replaces the original check with a call to a
      function that is optimized in a manner that returns correct output.
      
      R=michael_dawson@ca.ibm.com,jyan@ca.ibm.com,mtbrandyberry@ca.ibm.com,joransiu@ca.ibm.com,danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1826043002
      
      Cr-Commit-Position: refs/heads/master@{#35082}
      0d24a0fc
  26. 15 Mar, 2016 1 commit
  27. 08 Mar, 2016 1 commit
    • bryleun's avatar
      S390: Fixed condition code handling on FP->INT and FP rounding in simulator. · 2fdc0ae3
      bryleun authored
      The below instructions were fixed so that the produced condition
      codes in simulator matched behaviour in native s390 CPUs:
      
      CFDBR
      CGDBR
      CGEBR
      CFEBR
      CLFDBR
      CLGDBR
      CLGEBR
      
      Also implemented the CLFEBR instruction in s390 simulator.
      
      (Copypaste of 1763663003, which was pointing at wrong branch - should be master, not lkgr)
      
      R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,joransiu@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com,jyan@ca.ibm.com
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1773813002
      
      Cr-Commit-Position: refs/heads/master@{#34598}
      2fdc0ae3
  28. 26 Feb, 2016 1 commit
    • joransiu's avatar
      S390: Initial impl of S390 asm, masm, code-stubs,... · 23cf6592
      joransiu authored
      Initial commit with the bulk of the src/s390/* changes
      along with associated changes to the build toolchain for
      the new files.
      
      A minor update to V8PRIuPTR definition for Mac OS X
      affecting 32-bit S390 sim compilations.
      
      R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,jyan@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1725243004
      
      Cr-Commit-Position: refs/heads/master@{#34331}
      23cf6592
  29. 09 Dec, 2015 1 commit
    • mbrandy's avatar
      PPC64: [turbofan] Changed TruncateFloat64ToInt64 to TryTruncateFloat64ToInt64. · b9f92c15
      mbrandy authored
      Port 95844d94
      
      Original commit message:
          The new operator provides a second output which indicates whether the
          conversion from float64 to int64 was successful or not. The second
          output returns 0 if the conversion fails. If the conversion succeeds,
          then the second output is differs from 0.
      
          The second output can be ignored, which means that the operator can be
          used the same way as the original operator.
      
      R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      
      Review URL: https://codereview.chromium.org/1515603002
      
      Cr-Commit-Position: refs/heads/master@{#32724}
      b9f92c15
  30. 23 Nov, 2015 1 commit
  31. 11 Nov, 2015 1 commit
  32. 30 Sep, 2015 1 commit
  33. 27 Aug, 2015 1 commit
    • mbrandy's avatar
      PPC: Make Simulator respect C stack limits as well. · bcc9df92
      mbrandy authored
      Port 7fb31bdb
      
      Original commit message:
          The simulator uses a separate JS stack, exhaustion of the C stack
          however is not caught by JS limit checks. This change now lowers the
          limit of the JS stack accordingly on function calls.
      
      R=mstarzinger@chromium.org, jyan@ca.ibm.com, dstence@us.ibm.com, joransiu@ca.ibm.com
      BUG=chromium:522380
      LOG=n
      
      Review URL: https://codereview.chromium.org/1309303005
      
      Cr-Commit-Position: refs/heads/master@{#30413}
      bcc9df92
  34. 30 Jul, 2015 1 commit
  35. 11 Jun, 2015 1 commit