1. 09 Mar, 2020 1 commit
    • Dan Elphick's avatar
      [api] Create v8::String::NewFromLiteral that returns Local<String> · b097a8e5
      Dan Elphick authored
      String::NewFromLiteral is a templated function that takes a char[N]
      argument that can be used as an alternative to String::NewFromUtf8 and
      returns a Local<String> rather than a MaybeLocal<String> reducing the
      number of ToLocalChecked() or other checks.
      
      Since the string length is known at compile time, it can statically
      assert that the length is less than String::kMaxLength, which means that
      it can never fail at runtime.
      
      This also converts all found uses of NewFromUtf8 taking a string literal
      or a variable initialized from a string literal to use the new API. In
      some cases the types of stored string literals are changed from const
      char* to const char[] to ensure the size is retained.
      
      This API does introduce a small difference compared to NewFromUtf8. For
      a case like "abc\0def", NewFromUtf8 (using length -1 to infer length)
      would treat this as a 3 character string, whereas the new API will treat
      it as a 7 character string.
      
      As a drive-by fix, this also fixes all redundant uses of
      v8::NewStringType::kNormal when passed to any of the String::New*
      functions.
      
      Change-Id: Id96a44bc068d9c4eaa634aea688e024675a0e5b3
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2089935
      Commit-Queue: Dan Elphick <delphick@chromium.org>
      Reviewed-by: 's avatarMathias Bynens <mathias@chromium.org>
      Reviewed-by: 's avatarMythri Alle <mythria@chromium.org>
      Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66622}
      b097a8e5
  2. 17 Jun, 2019 1 commit
  3. 31 May, 2019 1 commit
  4. 23 May, 2019 1 commit
  5. 22 May, 2019 1 commit
  6. 20 May, 2019 1 commit
  7. 17 May, 2019 2 commits
  8. 28 Mar, 2019 2 commits
  9. 27 Mar, 2019 1 commit
  10. 20 Dec, 2018 1 commit
  11. 26 Nov, 2018 1 commit
    • Marja Hölttä's avatar
      [iwyu] Include heap-inl.h less. · 0453d418
      Marja Hölttä authored
      - Remove heap-inl.h includes from places where it looked unnecessary. (This is a
        non-scientific approach, because it's probably pulled in indirectly anyway.)
      
      - Annotate places which include heap-inl.h because they need heap/ internals.
      
      - ACCESSORS legitimately needs heap-inl.h because of Heap::FromWritableHeapObject.
      
      - Add includes to heap/heap-write-barrier(-inl).h
      
      - A bunch of IWYU fixes discovered when working on this CL (includes which were
        missing because heap-inl.h pulls them in indirectly).
      
      BUG=v8:7490,v8:8238,v8:8499
      
      Change-Id: I00f9a74d430f13d7c080dca77a92b03bcca7ef96
      Reviewed-on: https://chromium-review.googlesource.com/c/1349241Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Marja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#57814}
      0453d418
  12. 24 Nov, 2018 1 commit
  13. 22 Nov, 2018 1 commit
  14. 12 Nov, 2018 1 commit
  15. 24 Sep, 2018 1 commit
    • Dan Elphick's avatar
      [deprecation] Deprecate ToBoolean(Local<Context>) · d235f550
      Dan Elphick authored
      ToBoolean and BooleanValue cannot throw exceptions so the Maybe versions
      of the functions don't make sense. As such this deprecates the Maybe
      versions and undeprecates ToBoolean(Isolate*). It also adds
      BooleanValue(Isolate*).
      
      Fix up all of the v8 code to not use the deprecated functions.
      
      Bug: v8:7279, v8:8015
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel
      Change-Id: I50e7474d205c75baa153f0dea7f02dcf60232d1d
      Reviewed-on: https://chromium-review.googlesource.com/1238476
      Commit-Queue: Dan Elphick <delphick@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#56163}
      d235f550
  16. 12 Jan, 2018 1 commit
  17. 18 Oct, 2017 1 commit
  18. 28 Aug, 2017 1 commit
  19. 12 Apr, 2017 1 commit
  20. 17 Mar, 2017 1 commit
  21. 14 Nov, 2016 1 commit
  22. 05 Oct, 2016 1 commit
  23. 28 Sep, 2016 1 commit
  24. 07 Sep, 2016 1 commit
  25. 28 Jun, 2016 1 commit
  26. 21 Jun, 2016 1 commit
  27. 06 Apr, 2016 1 commit
  28. 01 Sep, 2015 1 commit
  29. 31 Aug, 2015 2 commits
    • hablich's avatar
      Revert of [heap] More flag cleanup. (patchset #8 id:140001 of... · 6eb83769
      hablich authored
      Revert of [heap] More flag cleanup. (patchset #8 id:140001 of https://codereview.chromium.org/1314863003/ )
      
      Reason for revert:
      Breaks http://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug%20-%202/builds/2372
      
      Original issue's description:
      > [heap] GC flag cleanup/restructuring.
      >
      > * GC's flags are now proper flags and not int.
      > * Callback flags are not threaded through but only set once like gc flags
      > * Callers of methods that trigger GCs need to pass a reason when not using
      >   the default parameters.
      >
      > Furthermore, each GC invocation can be passed the GC and GCCallback flags. We
      > usually override the currently set flags upon finishing a GC cylce, but are able
      > to restore the previously set if desired. This is useful for explicitely
      > triggered scavenges or external requests that interrupt the current behaviour.
      >
      > BUG=
      >
      > Committed: https://crrev.com/f4f3b431b9ce0778d926acf03c0d36dae5c0cba4
      > Cr-Commit-Position: refs/heads/master@{#30457}
      
      TBR=hpayer@chromium.org,yangguo@chromium.org,mlippautz@chromium.org
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=
      
      Review URL: https://codereview.chromium.org/1303393004
      
      Cr-Commit-Position: refs/heads/master@{#30463}
      6eb83769
    • mlippautz's avatar
      [heap] GC flag cleanup/restructuring. · f4f3b431
      mlippautz authored
      * GC's flags are now proper flags and not int.
      * Callback flags are not threaded through but only set once like gc flags
      * Callers of methods that trigger GCs need to pass a reason when not using
        the default parameters.
      
      Furthermore, each GC invocation can be passed the GC and GCCallback flags. We
      usually override the currently set flags upon finishing a GC cylce, but are able
      to restore the previously set if desired. This is useful for explicitely
      triggered scavenges or external requests that interrupt the current behaviour.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1314863003
      
      Cr-Commit-Position: refs/heads/master@{#30457}
      f4f3b431
  30. 20 Aug, 2015 1 commit
  31. 11 Aug, 2015 1 commit
    • mstarzinger's avatar
      Remove several grab-bag includes from the v8.h header. · 58109a2c
      mstarzinger authored
      This is the first step of turning the v8.h file into a normal header
      instead of an include-the-world header. The new rule is that no other
      header files are allowed to include v8.h, which is enforced by DEPS.
      
      Also the number of includes inside the v8.h file has been drastically
      reduced. Basically the last missing piece is the inclusion of the big
      objects-inl.h file.
      
      This in turn makes many headers follow the IWYU principle.
      
      R=bmeurer@chromium.org,hpayer@chromium.org,titzer@chromium.org
      
      Review URL: https://codereview.chromium.org/1282503003
      
      Cr-Commit-Position: refs/heads/master@{#30102}
      58109a2c
  32. 06 Jul, 2015 1 commit
  33. 03 Jun, 2015 1 commit
  34. 01 Jun, 2015 1 commit
  35. 10 Apr, 2015 1 commit
  36. 09 Apr, 2015 2 commits