1. 19 Mar, 2015 1 commit
    • jarin's avatar
      [turbofan] Remember types for deoptimization during simplified lowering. · b7dc9c58
      jarin authored
      With this change, we remember the types of frame state inputs (in a new
      operator, called TypedStateValues). Instead of inferring the value types
      when building translations, we used the recorded types.
      
      The original approach was not reliable because the passes after
      simplified lowering can change node types, and this in turn confuses
      the translation builder.
      
      BUG=chromium:468727
      LOG=n
      R=bmeurer@chromium.org
      
      Review URL: https://codereview.chromium.org/1015423002
      
      Cr-Commit-Position: refs/heads/master@{#27310}
      b7dc9c58
  2. 16 Mar, 2015 1 commit
    • jarin's avatar
      [turbofan] Cache for reusing parts of value vector nodes in frame states. · cd67e97a
      jarin authored
      Instead of the current approach of storing flat vectors in frame states (and possibly reusing the last vector in AST graph builder), this change list builds a tree for the values and tries to reuse the nodes for different frame states. At the moment, we only use this for the local variable part of frame state, but nothing prevents us from using this for all parts.
      
      This change provides two new classes: one for creating the tree (StateValuesCache) and one for iterating the trees (StateValuesAccess).
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1008213002
      
      Cr-Commit-Position: refs/heads/master@{#27222}
      cd67e97a