1. 09 Mar, 2016 35 commits
  2. 08 Mar, 2016 5 commits
    • binji's avatar
      [Wasm] Convert many of the fixed-size values to LEB128. · 78f6f838
      binji authored
      This CL modifies the following to be LEB128:
      * Function table indices
      * Import table signature indices
      * Export table function indices
      * Function signature param count
      * br/br_if break depth
      * br_table target count
      * block/loop expression count
      
      Still to do:
      * Import/export names (LEB128 count + inline data)
      * Data segments (LEB128 offset + size + inline data)
      * Function header stuff (should seperate into function sig and body sections)
      * Memory access alignment + offset (still discussing)
      
      BUG=
      R=titzer@chromium.org
      
      Review URL: https://codereview.chromium.org/1775873002
      
      Cr-Commit-Position: refs/heads/master@{#34603}
      78f6f838
    • verwaest's avatar
      Don't do any special normalization if a boilerplate contains function literals. · fd405704
      verwaest authored
      This mechanism was used to ensure that functions ended up as constants on the map of prototypes defined using object literals, e.g.,:
      
      function.prototype = {
        method: function() { ... }
      }
      
      Nowadays we treat prototypes specially, and make all their functions constants when an object turns prototype. Hence this special custom code isn't necessary anymore.
      
      This also affects boilerplates that do not become prototypes. Their functions will not be constants but fields instead. Calling their methods will slow down. However, multiple instances of the same boilerplate will stay monomorphic. We'll have to see what the impact is for such objects, but preliminary benchmarks do not show this as an important regression.
      
      BUG=chromium:593008
      LOG=n
      
      Review URL: https://codereview.chromium.org/1772423002
      
      Cr-Commit-Position: refs/heads/master@{#34602}
      fd405704
    • littledan's avatar
      Optimize new TypedArray(typedArray) constructor · ab6e48de
      littledan authored
      A previous spec compliance fix for TypedArrays caused a ~4x performance
      regression. This patch removes the regression by calling out
      to a path within the runtime which implements array copying more
      efficiently.
      
      BUG=chromium:592007
      R=adamk
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1767893002
      
      Cr-Commit-Position: refs/heads/master@{#34601}
      ab6e48de
    • titzer's avatar
      [wasm] Support a two-level namespace for imports. · d61a0c5a
      titzer authored
      R=binji@chromium.org,dschuff@chromium.org
      BUG=
      
      Review URL: https://codereview.chromium.org/1780483002
      
      Cr-Commit-Position: refs/heads/master@{#34600}
      d61a0c5a
    • littledan's avatar
      Ensure the @@species protector is updated for accessors · 3f8af30e
      littledan authored
      The initial species protector hooked into property declaration in an
      incomplete place, and missed definitions of accessors. This patch repairs
      them by calling out to update the protector from an additional location.
      
      R=adamk
      CC=verwaest,cbruni
      BUG=v8:4093
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1746323002
      
      Cr-Commit-Position: refs/heads/master@{#34599}
      3f8af30e