1. 15 May, 2017 3 commits
  2. 12 May, 2017 1 commit
  3. 11 May, 2017 1 commit
  4. 10 May, 2017 3 commits
  5. 09 May, 2017 3 commits
  6. 05 May, 2017 4 commits
  7. 04 May, 2017 1 commit
  8. 03 May, 2017 1 commit
  9. 02 May, 2017 1 commit
  10. 27 Apr, 2017 3 commits
  11. 26 Apr, 2017 2 commits
  12. 25 Apr, 2017 5 commits
    • Michael Starzinger's avatar
      [asm.js] Fix failure propagation of heap access validation. · 54818a63
      Michael Starzinger authored
      This fixes propagation of validation failures that happen during the
      validation of a heap access expression in {ValidateHeapAccess}.
      
      R=clemensh@chromium.org
      TEST=mjsunit/regress/regress-crbug-714971
      BUG=chromium:714971
      
      Change-Id: I8f91ac1da34ae50fdde2938f61b6468cdac92b6e
      Reviewed-on: https://chromium-review.googlesource.com/486801Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44851}
      54818a63
    • Clemens Hammacher's avatar
      [wasm] Move wasm-macro-gen.h to test/common/wasm · fc6d4a1f
      Clemens Hammacher authored
      This header file is only used from tests.
      Also, move the LoadStoreOpcodeOf method (only used in tests) from
      wasm-opcodes.h to wasm-macro-gen.h.
      
      R=ahaas@chromium.org
      
      Change-Id: I8d4691be494b5c1fbe3084441329850930bad647
      Reviewed-on: https://chromium-review.googlesource.com/486861
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44845}
      fc6d4a1f
    • Clemens Hammacher's avatar
      [wasm] Reuse LEB encoding logic in module builder · 4531c865
      Clemens Hammacher authored
      Instead of using the WASM_I32V_* macros (and other) from
      wasm-macro-gen.h, use the appropriate methods to encode LEB integers.
      This also saves some spaces for the wasm bytecode generated from asm.js.
      
      Specifically, this CL
      1) renames EmitVarInt to EmitI32V and EmitVarUint to EmitU32V (on
         WasmFunctionBuilder).
      2) introduces more methods on the WasmFunctionBuilder to emit i64v,
         u64v, f32, and f64 values.
      3) uses the ZoneBuffer instead of a plain ZoneVector<char> in the
         WasmFunctionBuilder to build the body of the function.
      4) introduces more helper functions on the ZoneBuffer to encode i64v,
         u64v, f32 and f64 values.
      
      R=ahaas@chromium.org
      
      Change-Id: Ifa59a6a67380ecf9a3823c382daf00855f5bc61e
      Reviewed-on: https://chromium-review.googlesource.com/486803Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44842}
      4531c865
    • Michael Starzinger's avatar
      [asm.js] Refactor parser identifier memory management. · c2abd807
      Michael Starzinger authored
      This unifies the memory management of identifier strings passed between
      the scanner, parser and module builder. The following scheme is used:
       - The scanner does not create copies of identifier strings itself, it
         exposes a reference to the current identifier. This reference becomes
         invalid as soon as the scanner advanced.
       - The parser preserves a single copy of each identifier that is stored
         in any data structure. That copy is allocated in the zone, lifetime
         is coupled to that of the zone.
       - The module builder can use all such identifiers by reference, as long
         as its lifetime is also coupled to the same zone.
      
      Note that the module builder still creates redundant copies for some
      identifiers (in order to maintain backwards compatibility with the old
      AST-based parser). This can be fixed once the "old validator" has been
      removed.
      
      R=clemensh@chromium.org
      BUG=v8:6127
      
      Change-Id: I8611d162e87730045a6061d08c3fe841daae8a7d
      Reviewed-on: https://chromium-review.googlesource.com/484439
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44836}
      c2abd807
    • Michael Starzinger's avatar
      [asm.js] Cleanup namespace usage in AsmJs class. · ea89c3fd
      Michael Starzinger authored
      R=clemensh@chromium.org
      
      Change-Id: I3aad1b4058eb464dee80c08332a186109efb7208
      Reviewed-on: https://chromium-review.googlesource.com/485622
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44829}
      ea89c3fd
  13. 24 Apr, 2017 1 commit
  14. 21 Apr, 2017 2 commits
  15. 19 Apr, 2017 3 commits
  16. 18 Apr, 2017 1 commit
  17. 17 Apr, 2017 1 commit
  18. 14 Apr, 2017 1 commit
  19. 13 Apr, 2017 1 commit
    • Michael Starzinger's avatar
      [asm.js] Test and fix "|0" annotation of calls. · f0946038
      Michael Starzinger authored
      This fixes the validation of "|0" annotations of call sites that are
      used to indicate a "signed" return type of functions. We use lookahead
      during call validation and request deferred validation as part of the
      actual OR-expression. Special care has to be taken to get precedence
      levels of all involved operators right.
      
      R=clemensh@chromium.org
      TEST=mjsunit/asm/call-annotation
      BUG=v8:6183
      
      Change-Id: If0586f669e7cee26a13425b0fd9f41098e852d68
      Reviewed-on: https://chromium-review.googlesource.com/475871
      Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#44639}
      f0946038
  20. 11 Apr, 2017 2 commits