1. 18 May, 2016 36 commits
  2. 17 May, 2016 4 commits
    • jshin's avatar
      Make normalize, collator, breakiterator faster · a4e0ee12
      jshin authored
      1. Normalizer: Use ICU's normalizer2 API instead of deprecated
      normalizer. Also uses quick scan method in the API to speed up in the
      most common cases (almost normalized and the target is NFC)
      
      2. In all three cases,  replace |v8::Utils::ToLocal(..)| with a more
      efficient internal method.
      
      BUG=v8:4983
      TEST=intl/string/normal*, intl/collator/*, intl/break-iterator/*
      TEST=test262/intl402/Collator/*, test262/built-ins/String/prototype/normalize/*
      CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_noi18n_rel_ng
      
      Review-Url: https://codereview.chromium.org/1971943002
      Cr-Commit-Position: refs/heads/master@{#36298}
      a4e0ee12
    • bryleun's avatar
      S390: Added 96 new instructions to the simulator EVALUATE code. · ef006c42
      bryleun authored
      R=joransiu@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com,jyan@ca.ibm.com
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/1980913003
      Cr-Commit-Position: refs/heads/master@{#36297}
      ef006c42
    • mike's avatar
      [parser] Relex restriction on reserved words · d0c65f93
      mike authored
      Some IdentifierNames are only included in the set of FutureReservedWords
      for strict mode code. Outside of strict mode, these IdentifierNames may
      be used as Identifiers. Notably, this includes their use as
      BindingIdentifiers in LexicalBindings.
      
      From ES2015 12.1.1 Static Semantics: Early Errors (Identifiers):
      
      > It is a Syntax Error if this phrase is contained in strict mode code
      > and the StringValue of IdentifierName is: "implements", "interface",
      > "let", "package", "private", "protected", "public", "static", or
      > "yield".
      
      http://www.ecma-international.org/ecma-262/6.0/#sec-identifiers-static-semantics-early-errors
      
      Due to a error in its heuristic for disambiguating the `let` token, V8
      does not currently allow any of the strict-mode-only FutureReservedWords
      to be used as a BindingIdentifier outside of strict mode.
      
      Update V8's heuristic for disambiguating the `let` keyword to account
      for strict mode, enabling these IdentifierNames to be used
      
      BUG=v8:4918
      LOG=N
      R=adamk@chromium.org
      
      Review-Url: https://codereview.chromium.org/1891453005
      Cr-Commit-Position: refs/heads/master@{#36296}
      d0c65f93
    • rmcilroy's avatar
      [Interpreter] Change LogicalNot to ToBooleanLogicalNot and add non-ToBoolean version. · 8352ad50
      rmcilroy authored
      Makes LogicalNot bytecode not do the ToBoolean operation, and add support in the
      peephole optimizer to choose between the appropriate bytecode depending upon
      whether the previous bytecode emitted a boolean or not.
      
      BUG=v8:4280
      LOG=N
      
      Review-Url: https://codereview.chromium.org/1985033002
      Cr-Commit-Position: refs/heads/master@{#36295}
      8352ad50