1. 16 Jun, 2020 1 commit
  2. 09 Jun, 2020 1 commit
  3. 25 Feb, 2020 1 commit
  4. 19 Feb, 2020 1 commit
  5. 03 Feb, 2020 1 commit
  6. 04 Oct, 2019 1 commit
  7. 16 Sep, 2019 1 commit
  8. 30 Jul, 2019 1 commit
  9. 24 Jul, 2019 1 commit
  10. 18 Jun, 2019 1 commit
    • Sigurd Schneider's avatar
      Reland "[arm64] Refactor constant pool implementation" · e93d244f
      Sigurd Schneider authored
      This is a reland of ac79b539
      
      This CL adds a missing BlockPoolsScope to guard a RequestHeapObject
      call. This fixes a latend bug that the original land flushed out.
      
      Original change's description:
      > [arm64] Refactor constant pool implementation
      >
      > This refactors the constant pool handling for arm64. The immediate goal
      > is to allow 32bit compressed pointers in the pool. The mediate goal is
      > to unify the implementation with the arm constant pool, which will be
      > done in a follow-up CL.
      >
      > Bug: v8:8054
      > Change-Id: I74db4245e5e1025f2e4de4144090fa4ce25883ab
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1645316
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#62209}
      
      TBR=mstarzinger@chromium.org,jgruber@chromium.org,georgia.kouveli@arm.com
      
      Bug: v8:8054
      Change-Id: I1e3ab13619a48caad33d77ed8bed86782f9d9674
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1664054Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62237}
      e93d244f
  11. 17 Jun, 2019 2 commits
  12. 28 May, 2019 1 commit
  13. 27 May, 2019 1 commit
    • Clemens Hammacher's avatar
      [cleanup] Replace simple typedefs by using · a335f2ae
      Clemens Hammacher authored
      This replaces all typedefs that define types and not functions by the
      equivalent "using" declaration.
      
      This was done mostly automatically using this command:
      ag -l '\btypedef\b' src test | xargs -L1 \
           perl -i -p0e 's/typedef ([^*;{}]+) (\w+);/using \2 = \1;/sg'
      
      Patchset 2 then adds some manual changes for typedefs for pointer types,
      where the regular expression did not match.
      
      R=mstarzinger@chromium.org
      TBR=yangguo@chromium.org, jarin@chromium.org
      
      Bug: v8:9183
      Change-Id: I6f6ee28d1793b7ac34a58f980b94babc21874b78
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1631409
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#61849}
      a335f2ae
  14. 24 May, 2019 1 commit
  15. 14 Jan, 2019 1 commit
    • Camillo Bruni's avatar
      Reland "[parser] Inline byte scope data into PreparseData object" · a6f44629
      Camillo Bruni authored
      This is a reland of e2d44ede
      
      Original change's description:
      > [parser] Inline byte scope data into PreparseData object
      > 
      > Each PreparseData object had at least one pointer to a PodArray for its
      > serialized scope data. These objects usually have only tens of bytes of
      > payload. By inlining the byte data we save 3 words per PreparseData object.
      > This optimization saves 140KB of data on cnn.com.
      > 
      > 
      > - Store data_length and inner_length as int32 saving a words on 64bit
      > - Inline store byte data into PreparseData
      > - OnHeapConsumedPreparseData directly uses the PreparseData object
      > - get_inner, set_inner no longer allow Null sentinels
      > 
      > Change-Id: I1f62154d05ea2f98a6574efa738b32a8a84319d5
      > Reviewed-on: https://chromium-review.googlesource.com/c/1406673
      > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58751}
      
      Change-Id: I1f0a22c641d0d67f435b01c82daf8da7f144bff4
      Reviewed-on: https://chromium-review.googlesource.com/c/1407066Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58785}
      a6f44629
  16. 11 Jan, 2019 2 commits
    • Maya Lekova's avatar
      Revert "[parser] Inline byte scope data into PreparseData object" · 1ec1712c
      Maya Lekova authored
      This reverts commit e2d44ede.
      
      Reason for revert: Breaks GC stress tests - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/23527
      
      Original change's description:
      > [parser] Inline byte scope data into PreparseData object
      > 
      > Each PreparseData object had at least one pointer to a PodArray for its
      > serialized scope data. These objects usually have only tens of bytes of
      > payload. By inlining the byte data we save 3 words per PreparseData object.
      > This optimization saves 140KB of data on cnn.com.
      > 
      > 
      > - Store data_length and inner_length as int32 saving a words on 64bit
      > - Inline store byte data into PreparseData
      > - OnHeapConsumedPreparseData directly uses the PreparseData object
      > - get_inner, set_inner no longer allow Null sentinels
      > 
      > Change-Id: I1f62154d05ea2f98a6574efa738b32a8a84319d5
      > Reviewed-on: https://chromium-review.googlesource.com/c/1406673
      > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58751}
      
      TBR=ulan@chromium.org,cbruni@chromium.org,leszeks@chromium.org
      
      Change-Id: I39d92ee7bd2864e1b0c3a8fed4a11b68b3e14d58
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/c/1407073Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
      Commit-Queue: Maya Lekova <mslekova@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58753}
      1ec1712c
    • Camillo Bruni's avatar
      [parser] Inline byte scope data into PreparseData object · e2d44ede
      Camillo Bruni authored
      Each PreparseData object had at least one pointer to a PodArray for its
      serialized scope data. These objects usually have only tens of bytes of
      payload. By inlining the byte data we save 3 words per PreparseData object.
      This optimization saves 140KB of data on cnn.com.
      
      
      - Store data_length and inner_length as int32 saving a words on 64bit
      - Inline store byte data into PreparseData
      - OnHeapConsumedPreparseData directly uses the PreparseData object
      - get_inner, set_inner no longer allow Null sentinels
      
      Change-Id: I1f62154d05ea2f98a6574efa738b32a8a84319d5
      Reviewed-on: https://chromium-review.googlesource.com/c/1406673Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58751}
      e2d44ede
  17. 24 Oct, 2018 1 commit
  18. 23 Oct, 2018 2 commits
  19. 05 Oct, 2018 1 commit
    • Peter Marshall's avatar
      [cleanup] Don't declare inline runtime functions by default · 49420760
      Peter Marshall authored
      For each intrinsic/runtime function we define in runtime.h, an inline
      version is automatically declared. We only ever use 24 of the inline
      functions. Even though we don't call the other ones, macro magic means
      they still take up space by existing in various arrays and tables like
      kIntrinsicFunctions. They also create code in switch statements.
      
      Some drive-by cleanups:
       - Remove the switch in NameForRuntimeId() and just use the table of
         runtime functions to lookup the name directly.
       - Remove tests for IsFunction, ClassOf and StringAdd intrinsics as
         they are the last users of the inline versions of these.
       - Remove the MaxSmi inline version as it is only used in tests.
      
      Saves 64 KiB binary size.
      
      Change-Id: I4c870ddacd2655ffcffa97d93200ed8f853752f5
      Reviewed-on: https://chromium-review.googlesource.com/c/1261939
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#56412}
      49420760
  20. 23 Aug, 2018 2 commits
  21. 07 Aug, 2018 1 commit
  22. 09 Jul, 2018 1 commit
    • Sigurd Schneider's avatar
      [turbofan] Use relative calls/jumps on arm for builtins · 23dbb81d
      Sigurd Schneider authored
      This CL uses pc-relative jumps and calls (B/BL) for calls from embedded
      builtins to embedded builtins. To make this work, the code range size is
      limited to 32MB on arm during mksnapshot, which ensures that all builtin
      to builtin offsets for jumps/calls fit into the B/BL immediate. At code
      generation time, we put a placeholder into the instruction offset which
      we resolve to the right code object when the code is copied to the heap.
      We use a new relocation mode RELATIVE_CODE_TARGET for these relative jumps.
      The relocation mode RELATIVE_CODE_TARGET should never appear after
      generating the snapshot.
      
      We modify the target_address/set_target_address methods of RelocInfo
      such that they return the absolute target addresses for pc-relative B/BL
      instructions. This ensures that the GC can treat RELATIVE_CODE_TARGET in
      the same way as code targets. This, however, only matters during
      snapshot creation time, and production code never contains
      RELATIVE_CODE_TARGET relocations.
      
      Bug: v8:6666
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Change-Id: If7eab83ad588859ca87c654a5ddc3e37caea884c
      Reviewed-on: https://chromium-review.googlesource.com/1117181Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54320}
      23dbb81d
  23. 26 Jun, 2018 1 commit
    • Sigurd Schneider's avatar
      [turbofan] Support kRootRegisterBias on all platforms · ba39d635
      Sigurd Schneider authored
      We had a kRootRegisterBias on x64 before. This CL ports the feature to
      all other platforms as well. The root register bias is helpful to adjust
      the value of the root register, which allows to better utilize signed
      immediate offset constants in load instructions.
      
      We currently use a separate add instruction to add kRootRegisterBias
      in the code that initializes the root register. This could be improved
      by adding a custom relocation mode ensuring that instead of the root
      address, the root address plus the bias is inserted (and in this way
      the add instruction can be omitted).
      
      Bug: v8:6666
      Change-Id: I55cf02ab85d11e3c6d0d83a8f7905dbf924890f1
      Reviewed-on: https://chromium-review.googlesource.com/1113539
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54023}
      ba39d635
  24. 21 Feb, 2018 1 commit
  25. 16 Jan, 2018 1 commit
  26. 02 Aug, 2017 1 commit
  27. 31 May, 2017 1 commit
    • martyn.capewell's avatar
      Reland of Reland of "ARM64: Add NEON support" · fc3f29d3
      martyn.capewell authored
      This reverts commit c5aad5f2
      The CL was reverted due to missing Chromium dependencies.
      
      This commit removes the simulator trace-based tests, and the associated header file dependencies, previously pulled in by DEPS. The NEON support now has only hand-written tests, in test-assembler-arm64.cc. The remaining tests can be added in a later patch.
      
      BUG=chromium:718439
      
      Original issue's description:
      > Reland "ARM64: Add NEON support"
      >
      > This reverts commit cc047635.
      > The CL was reverted due to a missing DEPS mirror.
      >
      > Original issue's description:
      > > ARM64: Add NEON support
      > >
      > > Add assembler, disassembler and simulator support for NEON in the ARM64 backend.
      > >
      > > BUG=
      > >
      > > Review-Url: https://codereview.chromium.org/2622643005
      > > Cr-Commit-Position: refs/heads/master@{#44306}
      >
      > BUG=
      >
      > Review-Url: https://codereview.chromium.org/2812573003
      > Cr-Commit-Position: refs/heads/master@{#44652}
      
      Review-Url: https://codereview.chromium.org/2896303003
      Cr-Commit-Position: refs/heads/master@{#45633}
      fc3f29d3
  28. 22 May, 2017 1 commit
  29. 15 Apr, 2017 1 commit
  30. 13 Apr, 2017 1 commit
  31. 31 Mar, 2017 2 commits
  32. 28 Mar, 2017 1 commit
  33. 28 Feb, 2017 1 commit
  34. 27 Feb, 2017 2 commits