[devtools] Use `ExecuteJavaScriptMethod` in DevTools

rebase CL 2044170 part 2.
part 1 was merged in CL 2431864.

DevTools uses `ExecuteJavaScriptMethod` instead of `ExecuteJavaScript`, which should reduce serialisation/deserialisation overhead.

Loading Chrome DevTools on the page https://www.facebook.com/Shakira:
Before:
  V8.CompileCode, 130.326 ms, 2227 times
  V8.ParseProgram, 49.329 ms, 1878 times

After:
  V8.CompileCode, 18.571 ms, 343 times
  V8.ParseProgram, 0.053ms, 2 times

Loading Chrome DevTools on Chrome DevTools on the page https://www.facebook.com/Shakira:
DevTools on DevTools
Before:
  V8.CompileCode, 180.928 ms, 3708
  V8.ParseProgram, 59.535 ms, 3700
After:
  V8.CompileCode, 4.956 ms, 92
  V8.ParseFunction, 1.945 ms, 92


Bug: chromium:1029427
Change-Id: I78011c8f80a99c85d65354fb4a8a776491ac4f3e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442012
Commit-Queue: Maksim Sadym <sadym@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813641}
7 files changed
tree: c14b5c1e9ab1c6e33a5ffd18770109cf622338f5
  1. .clang-format
  2. .clang-tidy
  3. .eslintrc.js
  4. .git-blame-ignore-revs
  5. .gitattributes
  6. .gitignore
  7. .gn
  8. .vpython
  9. .vpython3
  10. .yapfignore
  11. AUTHORS
  12. BUILD.gn
  13. CODE_OF_CONDUCT.md
  14. DEPS
  15. DIR_METADATA
  16. ENG_REVIEW_OWNERS
  17. LICENSE
  18. LICENSE.chromium_os
  19. OWNERS
  20. PRESUBMIT.py
  21. PRESUBMIT_test.py
  22. PRESUBMIT_test_mocks.py
  23. README.md
  24. WATCHLISTS
  25. android_webview/
  26. apps/
  27. ash/
  28. base/
  29. build/
  30. build_overrides/
  31. buildtools/
  32. cc/
  33. chrome/
  34. chromecast/
  35. chromeos/
  36. cloud_print/
  37. codereview.settings
  38. components/
  39. content/
  40. courgette/
  41. crypto/
  42. dbus/
  43. device/
  44. docs/
  45. extensions/
  46. fuchsia/
  47. gin/
  48. google_apis/
  49. google_update/
  50. gpu/
  51. headless/
  52. infra/
  53. ios/
  54. ipc/
  55. jingle/
  56. media/
  57. mojo/
  58. native_client_sdk/
  59. net/
  60. pdf/
  61. ppapi/
  62. printing/
  63. remoting/
  64. rlz/
  65. sandbox/
  66. services/
  67. skia/
  68. sql/
  69. storage/
  70. styleguide/
  71. testing/
  72. third_party/
  73. tools/
  74. ui/
  75. url/
  76. weblayer/
README.md

Logo Chromium

Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.

The project's web site is https://www.chromium.org.

Documentation in the source is rooted in docs/README.md.

Learn how to Get Around the Chromium Source Code Directory Structure .

For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.