1. 14 Jun, 2016 1 commit
    • oleksandr.chekhovskyi's avatar
      Parser: Report use counts once per feature · 2f6be682
      oleksandr.chekhovskyi authored
      Reporting use counts by invoking a callback once per occurrence has
      a large overhead cost in certain situations, for example when it needs
      to be dispatched to a different thread (which is the case for Web Workers).
      
      Parsing large scripts can produce a lot of occurrences (strict/sloppy mode
      once per function).
      
      Chromium (the only known user of UseCounters so far) does not actually care
      about number of occurrences, but simply whether they happened at least once.
      This commit changes behavior to report features at most once, which dramatically
      improves performance for impacted use cases, and should not affect the only
      known real world usage.
      
      R=littledan@chromium.org
      BUG=chromium:614775
      
      Review-Url: https://codereview.chromium.org/2062203002
      Cr-Commit-Position: refs/heads/master@{#36979}
      2f6be682
  2. 23 May, 2016 1 commit
    • nexus226's avatar
      tools: Fix a syntax error in plot-timer-events · 726d3be8
      nexus226 authored
      This fixes a syntax error in plot-timer-events script.
      
      Before:
        $ out/x64.release/d8 --prof --log-timer-events script.js
        $ tools/plot-timer-events v8.log
        tools/plot-timer-events: 75: tools/plot-timer-events: options+=1343: not found
        --distortion=
        Cmdline args: [options] [log-file-name]
        Default log file name is "v8.log".
          ...
      
      After:
        $ out/x64.release/d8 --prof --log-timer-events script.js
        $ tools/plot-timer-events v8.log
        $ ls timer-events.png
        timer-events.png
      
      BUG=
      
      Review-Url: https://codereview.chromium.org/1961873002
      Cr-Commit-Position: refs/heads/master@{#36434}
      726d3be8
  3. 15 Apr, 2016 1 commit
  4. 31 Mar, 2016 1 commit
  5. 11 Mar, 2016 1 commit
  6. 20 Feb, 2016 1 commit
  7. 29 Jan, 2016 1 commit
    • xaxxon's avatar
      Make handle ctors explicit · b6c9b703
      xaxxon authored
      Without this change, the v8::Local<> constructor will be picked up by the
      compiler as an option for an implicit cast for any pointer type.  This leads
      to bad error messages when accidentally passing an erroneous pointer type to
      a function wanting a Local<> (complains about a pointer assignment in Local<>'s
      constructor as opposed to a bad type for the parameter of the function being
      called) and also causes ambiguity errors where none should exist when calling
      overloaded functions (for example a function taking either a std::string or a
      v8::Local<v8::Script> cannot be called with a const char * because the compiler
      sees both types as being constructable with a const char *).
      
      R=jochen@chromium.org
      BUG=
      
      Review URL: https://codereview.chromium.org/1647833005
      
      Cr-Commit-Position: refs/heads/master@{#33602}
      b6c9b703
  8. 28 Jan, 2016 1 commit
  9. 16 Dec, 2015 1 commit
    • akodat's avatar
      Add Isolate::DiscardThreadSpecificMetadata method to embedder API. · aeb8073c
      akodat authored
      If many threads use the same Isolate (or many Isolates) and then
      terminate, their PerIsolateThreadData objects are never cleaned
      up, resulting in a slow memory leak and, worse, the
      PerIsolateThreadData chain getting larger and larger, adversely
      affecting performance.
      
      In this situation, embedders will now be encouraged to apply
      DiscardThreadSpecificMetadata against any Isolate a thread is
      done with, especially if the thread is about to terminate.
      
      Note that it is harmless to run DiscardThreadSpecificMetadata
      against an Isolate for which a thread has no thread data and
      per-Isolate thread data can be reestablished if a thread starts
      using an Isolate again after running DiscardThreadSpecificMetadata
      against it.
      
      It is, however, an embedder error to run
      DiscardThreadSpecificMetadata against an Isolate in thread with a
      Locker for the Isolate in the stack or against an Entered Isolate.
      
      This change cannot cause any change in behavior in existing apps
      as the only added coded can only be reached via the new
      DiscardThreadSpecificMetadata method.
      
      R=Jakob, jochen
      BUG=
      
      Review URL: https://codereview.chromium.org/1522703002
      
      Cr-Commit-Position: refs/heads/master@{#32909}
      aeb8073c
  10. 15 Dec, 2015 1 commit
  11. 12 Nov, 2015 1 commit
  12. 30 Oct, 2015 1 commit
  13. 14 Oct, 2015 1 commit
  14. 24 Sep, 2015 1 commit
  15. 23 Sep, 2015 1 commit
  16. 06 Sep, 2015 1 commit
  17. 04 Sep, 2015 3 commits
    • karl's avatar
      Reland: Speedup stringsearch for two byte strings · 24d48116
      karl authored
      Uses the lower byte with memchr which is
      significantly faster than a naive compare
      
      Performance difference with bench (http://hastebin.com/xuxexataso.js):
      
      old                             new
      
      single character                single character
      Κ found at 922                  Κ found at 922
      3324                            616
      ㎡ found at 13217               ㎡ found at 13217
      42366                           4931
      က found at 4096                 က found at 4096
      13369                           9836
      ＀ found at 65280                ＀ found at 65280
      207472                          36149
      ᆬ found at 65445                ᆬ found at 65445
      209344                          36666
        found at 8197                   found at 8197
      26731                           11757
      倂 found at 20482               倂 found at 20482
      66071                           17193
      
      linear search                   linear search
      ΚΛ found at 922                 ΚΛ found at 922
      4112                            504
      ㎡㎢ found at 13217             ㎡㎢ found at 13217
      55105                           5119
      ᆬᆭ found at 65445               ᆬᆭ found at 65445
      268016                          35496
      
      linear + bmh search             linear + bmh search
      ΚΛΜΝΞΟΠΡ found at 922           ΚΛΜΝΞΟΠΡ found at 922
      2897                            522
      ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445         ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445
      167687                          35283
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1324453007
      
      Cr-Commit-Position: refs/heads/master@{#30597}
      24d48116
    • machenbach's avatar
      Revert of Speedup stringsearch for two byte strings (patchset #3 id:40001 of... · df966cd2
      machenbach authored
      Revert of Speedup stringsearch for two byte strings (patchset #3 id:40001 of https://codereview.chromium.org/1303033012/ )
      
      Reason for revert:
      [Sheriff] Breaks fuzzer and msan:
      http://build.chromium.org/p/client.v8/builders/V8%20Fuzzer/builds/4773
      
      Repro with:
      tools/fuzz-harness.sh out/Debug/d8
      (in a ninja Debug build)
      
      Msan:
      http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/4097
      
      Original issue's description:
      > Speedup stringsearch for two byte strings
      >
      > Uses the lower byte with memchr which is
      > significantly faster than a naive compare
      >
      > Performance difference with bench (http://hastebin.com/xuxexataso.js):
      >
      > old                             new
      >
      > single character                single character
      > Κ found at 922                  Κ found at 922
      > 3324                            616
      > ㎡ found at 13217               ㎡ found at 13217
      > 42366                           4931
      > က found at 4096                 က found at 4096
      > 13369                           9836
      > ＀ found at 65280                ＀ found at 65280
      > 207472                          36149
      > ᆬ found at 65445                ᆬ found at 65445
      > 209344                          36666
      >   found at 8197                   found at 8197
      > 26731                           11757
      > 倂 found at 20482               倂 found at 20482
      > 66071                           17193
      >
      > linear search                   linear search
      > ΚΛ found at 922                 ΚΛ found at 922
      > 4112                            504
      > ㎡㎢ found at 13217             ㎡㎢ found at 13217
      > 55105                           5119
      > ᆬᆭ found at 65445               ᆬᆭ found at 65445
      > 268016                          35496
      >
      > linear + bmh search             linear + bmh search
      > ΚΛΜΝΞΟΠΡ found at 922           ΚΛΜΝΞΟΠΡ found at 922
      > 2897                            522
      > ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445         ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445
      > 167687                          158465
      >
      > Committed: https://crrev.com/fced280f37588f8a232a414201276e053117e9ea
      > Cr-Commit-Position: refs/heads/master@{#30587}
      
      TBR=danno@chromium.org,mstarzinger@chromium.org,jkummerow@chromium.org,karl@skomski.com
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      
      Review URL: https://codereview.chromium.org/1331433002
      
      Cr-Commit-Position: refs/heads/master@{#30588}
      df966cd2
    • karl's avatar
      Speedup stringsearch for two byte strings · fced280f
      karl authored
      Uses the lower byte with memchr which is
      significantly faster than a naive compare
      
      Performance difference with bench (http://hastebin.com/xuxexataso.js):
      
      old                             new
      
      single character                single character
      Κ found at 922                  Κ found at 922
      3324                            616
      ㎡ found at 13217               ㎡ found at 13217
      42366                           4931
      က found at 4096                 က found at 4096
      13369                           9836
      ＀ found at 65280                ＀ found at 65280
      207472                          36149
      ᆬ found at 65445                ᆬ found at 65445
      209344                          36666
        found at 8197                   found at 8197
      26731                           11757
      倂 found at 20482               倂 found at 20482
      66071                           17193
      
      linear search                   linear search
      ΚΛ found at 922                 ΚΛ found at 922
      4112                            504
      ㎡㎢ found at 13217             ㎡㎢ found at 13217
      55105                           5119
      ᆬᆭ found at 65445               ᆬᆭ found at 65445
      268016                          35496
      
      linear + bmh search             linear + bmh search
      ΚΛΜΝΞΟΠΡ found at 922           ΚΛΜΝΞΟΠΡ found at 922
      2897                            522
      ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445         ᆬᆭᄃᄄᄅᆰᆱᆲ found at 65445
      167687                          158465
      
      Review URL: https://codereview.chromium.org/1303033012
      
      Cr-Commit-Position: refs/heads/master@{#30587}
      fced280f
  18. 11 Aug, 2015 1 commit
    • saper's avatar
      Use static_cast<> for NULL (clang 3.7) · 75e43a66
      saper authored
      The following errors come up when compiling v8
       with clang 3.7 on FreeBSD/amd64:
      
      src/runtime/runtime-i18n.cc:629:37: error: reinterpret_cast from
      'nullptr_t' to 'v8::internal::Smi *' is not allowed
        local_object->SetInternalField(1, reinterpret_cast<Smi*>(NULL));
                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      
      test/cctest/test-heap.cc:131:20: error: reinterpret_cast from
            'nullptr_t' to 'v8::internal::Object *' is not allowed
        Handle<Object> n(reinterpret_cast<Object*>(NULL), isolate);
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      test/cctest/test-heap.cc:1989:18: error: reinterpret_cast from
            'nullptr_t' to 'Address' (aka 'unsigned char *') is not
            allowed
        Address base = reinterpret_cast<Address>(NULL);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      
      +add myself to the AUTHORS file.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1277353002
      
      Cr-Commit-Position: refs/heads/master@{#30103}
      75e43a66
  19. 17 Jul, 2015 1 commit
    • hichris123's avatar
      Make NumberFormat use the ICU currency data, fix bug in NumberFormat · ddb5c2d9
      hichris123 authored
      NumberFormat previously just used a min of 0 digits after the decimal and a max of 3. This CL changes it so that we use the ICU currency data, and set the min and max to the number of numbers after the decimal point for each currency.
      
      This CL also fixes a small bug where if the minimum fraction digits is above 3 but the maximum fraction digits isn't set, then it returns with only three numbers after the decimal point.
      
      BUG=435465,473104,304722
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1231613006
      
      Cr-Commit-Position: refs/heads/master@{#29734}
      ddb5c2d9
  20. 17 Jun, 2015 2 commits
  21. 01 Apr, 2015 1 commit
    • mike's avatar
      Re-write duplicated assertions · 3badfdcd
      mike authored
      The modified assertions targeted the property descriptor for the
      template object's first "cooked" value. The code immediately preceeding
      these statements asserts these values.
      
      Update the assertions to instead target the property descriptor for the
      template object's first "raw" value (which are otherwise untested).
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1049523003
      
      Cr-Commit-Position: refs/heads/master@{#27566}
      3badfdcd
  22. 12 Mar, 2015 1 commit
    • johan's avatar
      Fix build on solaris platforms · 68d5f916
      johan authored
      e8b9f2d7 introduced a different cast which broke building on Illumos.
      Revert to previous behavior for V8_OS_SOLARIS only.
      
      Found on SmartOS while building with gcc 4.9.0.
      
      edit1: adding jochen to reviewers since he was assigned through the issue tracker and danno since he seems to do a fair amount of cross-platform work
      
      edit2: removing BUG reference because I don't understand what LOG needs to contain (and it seems to link to chromium and not the v8 repo). Please edit commit message as appropriate.
      
      BUG=3935
      LOG=n
      
      Review URL: https://codereview.chromium.org/990063002
      
      Cr-Commit-Position: refs/heads/master@{#27163}
      68d5f916
  23. 03 Mar, 2015 1 commit
    • sejunho's avatar
      Fix preparing log file name. · a6f5fca5
      sejunho authored
      Problem:
      Excuting with flags as "--prof --logfile-per-isolate --logfile=/path/to/filename"
      expected file name: /path/to/isolate-<isolate id>-filename
      current result: isolate-<isolate id>-/path/to/filename
      
      This patch makes the file name we expected.
      
      Review URL: https://codereview.chromium.org/960813004
      
      Cr-Commit-Position: refs/heads/master@{#26955}
      a6f5fca5
  24. 09 Feb, 2015 1 commit
  25. 02 Feb, 2015 1 commit
  26. 26 Jan, 2015 1 commit
  27. 16 Jan, 2015 1 commit
  28. 14 Jan, 2015 1 commit
    • marja's avatar
      Saner AUTHORS, part 2: Adding AUTHORS based on "Patch from" / "Patch by" lines. · 0fa7d438
      marja authored
      Notes:
      - All the added authors have signed the CLA.
      - Updated 2 AUTHORS lines to match the e-mail addresses used for signing the CLA.
      - In addition, checked that all authors in the AUTHORS file after this change
        have signed the CLA.
      - Whenever it was possible to guess, based on the e-mail address, that the
        contribution was made under a corporate CLA, added the company and the
        wildcard instead of the individual.
      
      BUG=
      NOTRY=true
      
      Review URL: https://codereview.chromium.org/832083004
      
      Cr-Commit-Position: refs/heads/master@{#26054}
      0fa7d438
  29. 13 Jan, 2015 1 commit
    • marja's avatar
      Saner AUTHORS, part 1: Corporate CLLAs and wildcards. · 925eded3
      marja authored
      Updating AUTHORS for companies who have signed CCLA.
      
      Changes:
      - Added wildcard rules for company e-mail addresses
      - Removed individual e-mail addresses for contributors who are under a corporate
        CLLA (the copyright holder in this case is the company, not the individual
        authors). Domains affected by this change: intel.com, arm.com, codeaurora.org.
      
      In addition, added a wildcard rule for Chromium (which was not previously
      listed at all).
      
      R=danno
      NOTRY=true
      BUG=
      
      Review URL: https://codereview.chromium.org/850653003
      
      Cr-Commit-Position: refs/heads/master@{#26039}
      925eded3
  30. 17 Oct, 2014 1 commit
  31. 09 Oct, 2014 1 commit
  32. 29 Sep, 2014 3 commits
  33. 27 Aug, 2014 1 commit
  34. 23 May, 2014 1 commit
  35. 12 Feb, 2014 1 commit