1. 21 Jul, 2016 1 commit
  2. 08 Mar, 2016 1 commit
  3. 22 Jan, 2016 1 commit
  4. 09 Feb, 2015 1 commit
  5. 04 Sep, 2013 1 commit
  6. 27 Feb, 2012 1 commit
  7. 22 Feb, 2012 2 commits
    • vegorov@chromium.org's avatar
      Support OSR in for-in loops. · 5bb6a839
      vegorov@chromium.org authored
      Modify PreProcessOsrEntry to work with OSR entries that have non-empty expression stack.
      
      Modify graph builder to take for-in state from environment instead of directly referencing emitted instructions.
      
      Extend %OptimizeFunctionOnNextCall with an argument to force OSR to make writing OSR tests easier: %OptimizeFunctionOnNextCall(f, "osr").
      
      R=fschneider@chromium.org
      TEST=test/mjsunit/compiler/optimized-for-in.js
      
      Review URL: https://chromiumcodereview.appspot.com/9431030
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      5bb6a839
    • vegorov@chromium.org's avatar
      Support fast case for-in in Crankshaft. · 6703ddda
      vegorov@chromium.org authored
      Only JSObject enumerables with enum cache (fast case properties, no interceptors, no enumerable properties on the prototype) are supported.
      
      HLoadKeyedGeneric with keys produced by for-in enumeration are recognized and rewritten into direct property load by index. For this enum-cache was extended to store property indices in a separate array (see handles.cc).
      
      New hydrogen instructions:
      
      - HForInPrepareMap: checks for-in fast case preconditions and returns map that contains enum-cache;
      - HForInCacheArray: extracts enum-cache array from the map;
      - HCheckMapValue: map check with HValue map instead of immediate;
      - HLoadFieldByIndex: load fast property by it's index, positive indexes denote in-object properties, negative - out of object properties;
      
      Changed hydrogen instructions:
      
      - HLoadKeyedFastElement: added hole check suppression for loads from internal FixedArrays that are knows to have no holes inside.
      
      R=fschneider@chromium.org
      BUG=
      TEST=
      
      Review URL: https://chromiumcodereview.appspot.com/9425045
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10794 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      6703ddda