1. 19 Jun, 2019 1 commit
  2. 21 May, 2019 1 commit
  3. 20 May, 2019 1 commit
  4. 03 Dec, 2018 1 commit
  5. 05 Nov, 2018 1 commit
    • Tobias Tebbi's avatar
      [torque] qualified access to CSA assemblers · 23b48920
      Tobias Tebbi authored
      No longer use inheritance to associate Torque-generated assemblers
      with corresponding CSA subclasses. Instead, all references to CSA
      and CSA-derived assemblers are now explicitly qualified, by generating
      a short-lived assembler instance in-place. As a consequence, Torque
      files have to mention the assembler external macros live in.
      The CodeStubAssembler is the default for this and can be omitted.
      As a drive-by cleanup, also distinguish between names that are emitted
      in C++ and names that are intended to be read in error messages. This
      is relevant for generic instantiations, where the generated names are
      rather unreadably mangled.
      
      As a follow-up, it will be easy to allow for qualified access to
      different modules, thus implementing full namespace semantics for
      modules.
      
      Bug: v8:7793
      Change-Id: Ie6f1b6b549b510fb49be2442393d898d5f130950
      Reviewed-on: https://chromium-review.googlesource.com/c/1309636
      Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
      Reviewed-by: 's avatarDaniel Clifford <danno@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#57235}
      23b48920
  6. 18 Sep, 2018 1 commit
  7. 03 Aug, 2018 1 commit
    • Théotime Grohens's avatar
      [dataview] Fix too tight TNode type in DataView getters · 3656b465
      Théotime Grohens authored
      This CL fixes a bug found by Clusterfuzz, in which the functions
      LoadDataViewByteOffset and -ByteLength incorrectly had a return
      type of TNode<Smi> instead of TNode<Number>.
      
      This caused a CAST() call to fail when the requested byte offset
      or byte length did not fit inside a Smi, i.e. when the underlying
      ArrayBuffer of the DataView had a length longer than 2^30 on
      32-bit platforms.
      
      The CL also includes a new test in mjsunit to test against this.
      
      Bug: chromium:869313
      Change-Id: Ibb7d29bda5782a12c4b506c070bb03fef8c3ec70
      Reviewed-on: https://chromium-review.googlesource.com/1158582
      Commit-Queue: Théotime Grohens <theotime@google.com>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54900}
      3656b465
  8. 05 Jul, 2018 1 commit
  9. 25 Jun, 2018 1 commit
  10. 18 Jun, 2018 1 commit
  11. 15 Jun, 2018 1 commit
  12. 12 Jun, 2018 1 commit
    • Daniel Clifford's avatar
      [torque] Turn implicit converts/unsafe_casts into generics · bbbfd81c
      Daniel Clifford authored
      In the process:
        - Add strict ordering of Types so that name mangling is consistent
          and build time. Previously, the UnionType stored the union's
          types in a std::set<const Type*>, which did not have a consistent
          ordering of the types in the set.
        - Add a int31 type to enable consistency and correctness of
          handling of 'constexpr int31' values on the C++ side.
        - By removing the "implicit" keyword for operators, there is now
          one less difference between operators and calls, another
          incremental step in unifying operators and calls.
        - Enable external (i.e. C++-defined) generic specializations
        - Add CSA support for checking double ElementsKinds, including
          tests.
        - Clean up some constexpr/non-constexpr handling of ElementsKinds.
      
      Bug: v8:7793
      Change-Id: I27699aba70b98ebf5466e5b62b045d7b1dad62c8
      Reviewed-on: https://chromium-review.googlesource.com/1091155
      Commit-Queue: Daniel Clifford <danno@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53664}
      bbbfd81c
  13. 06 Jun, 2018 2 commits
    • Daniel Clifford's avatar
      [torque] Implement parameter overloading in generics · 06f2a5c2
      Daniel Clifford authored
      This allows redifinitions of generics with the same name but differing parameter
      type lists, e.g.
      
        macro coerce<Dest: type>(from: HeapObject): Dest;
        coerce<int32>(from: HeapObject): int32 {...}
        macro coerce<Dest: type>(from: Smi): Dest;
        coerce<int32>(from: Smi): int32 {...}
      
      In order to allow multiple overloads of generic macros with the same name,
      a more nuanced lookup of calls has been implemented using the
      ParameterDifference utility class. There is still work to be done to unify
      when ParameterDifference is used for lookup (e.g. removing it from operator
      lookup when operators become simple aliases for macro names), but that work
      will be done in a separate CL.
      
      As part of this CL, the custom handling of "cast<>" operator in the .g4
      grammar has been removed and replaced by a handful of equivalent overloads of
      a generic "cast" macro.
      
      Bug: v8:7793
      Change-Id: Ibb2cdd3d58632b7f7f7ba683499f9688ae07f4f8
      Reviewed-on: https://chromium-review.googlesource.com/1087873
      Commit-Queue: Daniel Clifford <danno@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53562}
      06f2a5c2
    • Théotime Grohens's avatar
      [dataview] Implement Torque/CSA getters for DataView · 22fab0ba
      Théotime Grohens authored
      This CL fully implements the DataView getters for the Uint8, Int8,
      Uint16, Int16, Uint32 and Int32 types in Torque, and removes
      the runtime implementation that is not needed anymore.
      
      There should be a light but visible performance increase compared to
      the former runtime implementation.
      
      Change-Id: I7d85097fd5953b9629f3ac6bed93b068889712b2
      Reviewed-on: https://chromium-review.googlesource.com/1078349
      Commit-Queue: Théotime Grohens <theotime@google.com>
      Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#53553}
      22fab0ba
  14. 24 May, 2018 1 commit
  15. 23 May, 2018 1 commit