1. 24 Sep, 2015 1 commit
  2. 18 Sep, 2015 1 commit
    • bmeurer's avatar
      [stubs] Refactor StringCompareStub and use it for HStringCompareAndBranch. · 8016547c
      bmeurer authored
      The StringCompareStub used to take its parameters on the (JavaScript)
      stack, which made it impossible to use in TurboFan. Actually
      StringCompareStub was currently completely unused. This changes the
      calling convention to something TurboFan compatible and introduces a
      CallInterfaceDescriptor for StringCompareStub. It also changes
      HStringCompareAndBranch to use the StringCompareStub instead of using
      the full blown CompareICStub for a stupid string comparison.
      
      R=jarin@chromium.org
      
      Review URL: https://codereview.chromium.org/1347913003
      
      Cr-Commit-Position: refs/heads/master@{#30818}
      8016547c
  3. 14 Sep, 2015 1 commit
  4. 28 Aug, 2015 1 commit
  5. 25 Aug, 2015 1 commit
    • bmeurer's avatar
      Correctify instanceof and make it optimizable. · 5d875a57
      bmeurer authored
      The previous hack with HInstanceOfKnownGlobal was not only slower,
      but also very brittle and required a lot of weird hacks to support it. And
      what's even more important it wasn't even correct (because a map check
      on the lhs is never enough for instanceof).
      
      The new implementation provides a sane runtime implementation
      for InstanceOf plus a fast case in the InstanceOfStub, combined with
      a proper specialization in the case of a known global in CrankShaft,
      which does only the prototype chain walk (coupled with a code
      dependency on the known global).
      
      As a drive-by-fix: Also fix the incorrect Object.prototype.isPrototypeOf
      implementation.
      
      BUG=v8:4376
      LOG=y
      
      Review URL: https://codereview.chromium.org/1304633002
      
      Cr-Commit-Position: refs/heads/master@{#30342}
      5d875a57
  6. 31 Jul, 2015 1 commit
    • bmeurer's avatar
      [stubs] Unify (and optimize) implementation of ToObject. · 4fc6f547
      bmeurer authored
      This is the initial (big) step towards a more uniform implementation of
      the ToObject abstract operation (ES6 7.1.13), where we have a fallback
      implementation in JSReceiver::ToObject() and a fast (hydrogen) CodeStub
      to deal with the fast case (we should be able to do more cleanup on this
      in a followup CL).  For natives we expose the abstract operation via a
      %_ToObject intrinsic, also exposed via a macro TO_OBJECT, that unifies
      the previous confusion with TO_OBJECT_INLINE, ToObject, TO_OBJECT,
      $toObject and %$toObject.  Now the whole implementation of the abstract
      operation is context independent, meaning we don't need any magic in the
      builtins object nor the native context.
      
      R=mvstanton@chromium.org,yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1266013006
      
      Cr-Commit-Position: refs/heads/master@{#29953}
      4fc6f547
  7. 13 Jul, 2015 2 commits
  8. 30 Jun, 2015 1 commit
  9. 26 Jun, 2015 1 commit
  10. 22 Jun, 2015 1 commit
  11. 19 Jun, 2015 1 commit
  12. 18 Jun, 2015 3 commits
  13. 08 Jun, 2015 1 commit
  14. 15 May, 2015 1 commit
  15. 12 May, 2015 1 commit
  16. 06 May, 2015 1 commit
  17. 27 Apr, 2015 1 commit
  18. 24 Apr, 2015 1 commit
  19. 21 Apr, 2015 1 commit
  20. 20 Apr, 2015 1 commit
  21. 02 Mar, 2015 1 commit
  22. 25 Feb, 2015 1 commit
  23. 23 Feb, 2015 1 commit
  24. 05 Feb, 2015 1 commit
  25. 04 Feb, 2015 1 commit
    • marja's avatar
      Introduce LanguageMode, drop StrictMode. · c7851da4
      marja authored
      This enables adding more language modes in the future.
      
      For maximum flexibility, LanguageMode is a bitmask, so we're not restricted to
      use a sequence of language modes which are progressively stricter, but we can
      express the language mode as combination of features.
      
      For now, LanguageMode can only be "sloppy" or "strict", and there are
      STATIC_ASSERTS in places which need to change when more modes are added.
      
      LanguageMode is a bit like the old LanguageMode when "extended" mode was still
      around (see https://codereview.chromium.org/8417035 and
      https://codereview.chromium.org/181543002 ) except that it's transmitted through
      all the layers (there's no StrictModeFlag).
      
      BUG=
      
      Review URL: https://codereview.chromium.org/894683003
      
      Cr-Commit-Position: refs/heads/master@{#26419}
      c7851da4
  26. 27 Jan, 2015 1 commit
  27. 04 Nov, 2014 1 commit
  28. 10 Oct, 2014 1 commit
  29. 11 Sep, 2014 1 commit