1. 16 Mar, 2021 1 commit
  2. 22 May, 2019 1 commit
    • Andreas Haas's avatar
      [wasm][anyref] Cache export wrappers per signature · d56ee2e3
      Andreas Haas authored
      Up until now, we cached export wrappers per export index. With the
      anyref proposal potentially many more functions will need export
      wrappers, e.g. any function that is stored in a table, and any
      function accessed by the new ref.func instruction.
      
      With this CL, we change the caching scheme an do the caching per
      signature. Thereby we can guarantee that any export wrapper which
      potentially exists can be stored in the cache.
      
      For cctests which use wasm-run-utils, we don't know the size of the
      cache anymore ahead of time. However, we assume that no more than
      5 signatures will be used in any cctest. If this assumption is not
      true, we can just adjust the number.
      
      The cache is now accessed in all code paths where we need an export
      wrapper.
      
      Bug: chromium:962850
      
      Change-Id: I32df60dfa7801d1e71f7d837da091f388198af1f
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1615247
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#61752}
      d56ee2e3
  3. 21 May, 2019 1 commit
  4. 24 Oct, 2018 1 commit
  5. 12 Oct, 2018 1 commit
  6. 12 Jul, 2018 1 commit
  7. 07 May, 2018 1 commit
  8. 03 May, 2018 1 commit
  9. 16 Oct, 2017 1 commit
  10. 26 Jul, 2017 1 commit
  11. 24 Jul, 2017 1 commit
  12. 18 Jul, 2017 1 commit
    • Clemens Hammacher's avatar
      [wasm] Make signature map move-only · 0725ff15
      Clemens Hammacher authored
      Signature maps should only be updated, but never copied. We had a bug
      because we accidentally updated a copy of the map. This refactoring
      prevents any such bugs in the future, and fixes more occurences where
      we accidentally copied structs containing a signature map (the move-only
      constraint also extends to all structs containing a signature map).
      
      Drive-by: Make InstanceBuilder::NeedsWrappers const.
      
      R=titzer@chromium.org
      
      Bug: chromium:741750
      Change-Id: Id919203d8c4078e608a1163e5c790c97d06a9753
      Reviewed-on: https://chromium-review.googlesource.com/571791Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#46728}
      0725ff15
  13. 09 Nov, 2016 1 commit
    • ahaas's avatar
      [wasm] Indirect calls without function table cause validation errors. · 4db05d40
      ahaas authored
      The spec defines that indirect calls in WebAssembly code should cause a
      validation error if no function table exists.
      
      The CL contains the following changes:
      1) Throw a validation error for indirect calls if the function table
         not exist.
      2) Do not create TF nodes to throw a runtime error for indirect calls
         if the function table does not exist.
      3) Fix existing unit tests by creating a dummy function table.
      4) Add new a new test which tests that indirect calls without function
         table cause a validation error.
      
      R=rossberg@chromium.org
      CC=titzer@chromium.org
      
      TEST=unittests/AstDecoderTest.IndirectCallsWithoutTableCrash
      
      Review-Url: https://codereview.chromium.org/2484623002
      Cr-Commit-Position: refs/heads/master@{#40852}
      4db05d40
  14. 11 Oct, 2016 1 commit