Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(145)

Side by Side Diff: BUILD.gn

Issue 2118183002: [interpeter] Move to table based peephole optimizer. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: nit. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/interpreter/bytecode-peephole-optimizer.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//build/config/android/config.gni") 5 import("//build/config/android/config.gni")
6 import("//build/config/arm.gni") 6 import("//build/config/arm.gni")
7 import("//build/config/dcheck_always_on.gni") 7 import("//build/config/dcheck_always_on.gni")
8 import("//build/config/mips.gni") 8 import("//build/config/mips.gni")
9 import("//build/config/sanitizers/sanitizers.gni") 9 import("//build/config/sanitizers/sanitizers.gni")
10 10
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 64
65 # Similar to vfp but on MIPS. 65 # Similar to vfp but on MIPS.
66 v8_can_use_fpu_instructions = true 66 v8_can_use_fpu_instructions = true
67 67
68 # Similar to the ARM hard float ABI but on MIPS. 68 # Similar to the ARM hard float ABI but on MIPS.
69 v8_use_mips_abi_hardfloat = true 69 v8_use_mips_abi_hardfloat = true
70 } 70 }
71 71
72 v8_random_seed = "314159265" 72 v8_random_seed = "314159265"
73 v8_toolset_for_shell = "host" 73 v8_toolset_for_shell = "host"
74 generated_peephole_source = "$target_gen_dir/bytecode-peephole-table.cc"
74 75
75 ############################################################################### 76 ###############################################################################
76 # Configurations 77 # Configurations
77 # 78 #
78 config("internal_config") { 79 config("internal_config") {
79 visibility = [ ":*" ] # Only targets in this file can depend on this. 80 visibility = [ ":*" ] # Only targets in this file can depend on this.
80 81
81 include_dirs = [ "." ] 82 include_dirs = [ "." ]
82 83
83 if (is_component_build) { 84 if (is_component_build) {
(...skipping 541 matching lines...) Expand 10 before | Expand all | Expand 10 after
625 rebase_path("$root_out_dir/snapshot_blob.bin", root_build_dir), 626 rebase_path("$root_out_dir/snapshot_blob.bin", root_build_dir),
626 ] 627 ]
627 } 628 }
628 629
629 if (v8_embed_script != "") { 630 if (v8_embed_script != "") {
630 sources += [ v8_embed_script ] 631 sources += [ v8_embed_script ]
631 args += [ rebase_path(v8_embed_script, root_build_dir) ] 632 args += [ rebase_path(v8_embed_script, root_build_dir) ]
632 } 633 }
633 } 634 }
634 635
636 action("run_mkpeephole") {
637 visibility = [ ":*" ] # Only targets in this file can depend on this.
638
639 deps = [
640 ":mkpeephole($v8_snapshot_toolchain)",
641 ]
642
643 outputs = [
644 generated_peephole_source
645 ]
646
647 sources = []
648
649 script = "tools/run.py"
650
651 args = [
652 "./" + rebase_path(get_label_info(":mkpeephole($v8_snapshot_toolchain)",
653 "root_out_dir") + "/mkpeephole",
654 root_build_dir),
655 rebase_path(generated_peephole_source, root_build_dir),
656 ]
657 }
658
635 action("v8_dump_build_config") { 659 action("v8_dump_build_config") {
636 script = "tools/testrunner/utils/dump_build_config.py" 660 script = "tools/testrunner/utils/dump_build_config.py"
637 outputs = [ 661 outputs = [
638 "$root_out_dir/v8_build_config.json", 662 "$root_out_dir/v8_build_config.json",
639 ] 663 ]
640 args = [ 664 args = [
641 rebase_path("$root_out_dir/v8_build_config.json", root_build_dir), 665 rebase_path("$root_out_dir/v8_build_config.json", root_build_dir),
642 "dcheck_always_on=$dcheck_always_on", 666 "dcheck_always_on=$dcheck_always_on",
643 "is_asan=$is_asan", 667 "is_asan=$is_asan",
644 "is_cfi=$is_cfi", 668 "is_cfi=$is_cfi",
(...skipping 634 matching lines...) Expand 10 before | Expand all | Expand 10 after
1279 "src/interpreter/bytecode-array-iterator.h", 1303 "src/interpreter/bytecode-array-iterator.h",
1280 "src/interpreter/bytecode-array-writer.cc", 1304 "src/interpreter/bytecode-array-writer.cc",
1281 "src/interpreter/bytecode-array-writer.h", 1305 "src/interpreter/bytecode-array-writer.h",
1282 "src/interpreter/bytecode-dead-code-optimizer.cc", 1306 "src/interpreter/bytecode-dead-code-optimizer.cc",
1283 "src/interpreter/bytecode-dead-code-optimizer.h", 1307 "src/interpreter/bytecode-dead-code-optimizer.h",
1284 "src/interpreter/bytecode-generator.cc", 1308 "src/interpreter/bytecode-generator.cc",
1285 "src/interpreter/bytecode-generator.h", 1309 "src/interpreter/bytecode-generator.h",
1286 "src/interpreter/bytecode-label.h", 1310 "src/interpreter/bytecode-label.h",
1287 "src/interpreter/bytecode-peephole-optimizer.cc", 1311 "src/interpreter/bytecode-peephole-optimizer.cc",
1288 "src/interpreter/bytecode-peephole-optimizer.h", 1312 "src/interpreter/bytecode-peephole-optimizer.h",
1313 "src/interpreter/bytecode-peephole-table.h",
1289 "src/interpreter/bytecode-pipeline.cc", 1314 "src/interpreter/bytecode-pipeline.cc",
1290 "src/interpreter/bytecode-pipeline.h", 1315 "src/interpreter/bytecode-pipeline.h",
1291 "src/interpreter/bytecode-register-allocator.cc", 1316 "src/interpreter/bytecode-register-allocator.cc",
1292 "src/interpreter/bytecode-register-allocator.h", 1317 "src/interpreter/bytecode-register-allocator.h",
1293 "src/interpreter/bytecode-register-optimizer.cc", 1318 "src/interpreter/bytecode-register-optimizer.cc",
1294 "src/interpreter/bytecode-register-optimizer.h", 1319 "src/interpreter/bytecode-register-optimizer.h",
1295 "src/interpreter/bytecode-traits.h", 1320 "src/interpreter/bytecode-traits.h",
1296 "src/interpreter/bytecodes.cc", 1321 "src/interpreter/bytecodes.cc",
1297 "src/interpreter/bytecodes.h", 1322 "src/interpreter/bytecodes.h",
1298 "src/interpreter/constant-array-builder.cc", 1323 "src/interpreter/constant-array-builder.cc",
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after
1864 "src/s390/simulator-s390.h", 1889 "src/s390/simulator-s390.h",
1865 ] 1890 ]
1866 } 1891 }
1867 1892
1868 configs = [ ":internal_config" ] 1893 configs = [ ":internal_config" ]
1869 1894
1870 defines = [] 1895 defines = []
1871 deps = [ 1896 deps = [
1872 ":v8_libbase", 1897 ":v8_libbase",
1873 ":v8_libsampler", 1898 ":v8_libsampler",
1899 ":run_mkpeephole",
1874 ] 1900 ]
1875 1901
1902 sources += [ generated_peephole_source ]
1903
1876 if (is_win) { 1904 if (is_win) {
1877 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 1905 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1878 cflags = [ "/wd4267" ] 1906 cflags = [ "/wd4267" ]
1879 } 1907 }
1880 1908
1881 if (v8_enable_i18n_support) { 1909 if (v8_enable_i18n_support) {
1882 deps += [ "//third_party/icu" ] 1910 deps += [ "//third_party/icu" ]
1883 if (is_win) { 1911 if (is_win) {
1884 deps += [ "//third_party/icu:icudata" ] 1912 deps += [ "//third_party/icu:icudata" ]
1885 } 1913 }
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
2089 deps = [ 2117 deps = [
2090 ":v8_base", 2118 ":v8_base",
2091 ":v8_libplatform", 2119 ":v8_libplatform",
2092 ":v8_nosnapshot", 2120 ":v8_nosnapshot",
2093 "//build/config/sanitizers:deps", 2121 "//build/config/sanitizers:deps",
2094 "//build/win:default_exe_manifest", 2122 "//build/win:default_exe_manifest",
2095 ] 2123 ]
2096 } 2124 }
2097 } 2125 }
2098 2126
2127 v8_executable("mkpeephole") {
2128 # mkpeephole needs to be built for the build host so the peephole lookup
2129 # table can built during build. The table depends on the properties of
2130 # bytecodes that are described in bytecodes.{cc,h}.
2131 visibility = [ ":*" ] # Only targets in this file can depend on this.
2132
2133 sources = [
2134 "src/interpreter/bytecode-peephole-optimizer.h",
2135 "src/interpreter/bytecodes.cc",
2136 "src/interpreter/bytecodes.h",
2137 "src/interpreter/mkpeephole.cc",
2138 ]
2139
2140 configs = [ ":internal_config" ]
Michael Achenbach 2016/07/11 10:54:07 You also need ":external_config" like in other exe
oth 2016/07/12 10:08:53 Ack, done. Thanks!
2141
2142 deps = [
2143 ":v8_libbase",
Michael Achenbach 2016/07/11 14:08:40 also "//build/win:default_exe_manifest" should be
oth 2016/07/12 10:08:53 Ack, done. Thanks!
2144 ]
2145 }
2146
2099 ############################################################################### 2147 ###############################################################################
2100 # Public targets 2148 # Public targets
2101 # 2149 #
2102 2150
2103 want_v8_shell = 2151 want_v8_shell =
2104 (current_toolchain == host_toolchain && v8_toolset_for_shell == "host") || 2152 (current_toolchain == host_toolchain && v8_toolset_for_shell == "host") ||
2105 (current_toolchain == v8_snapshot_toolchain && 2153 (current_toolchain == v8_snapshot_toolchain &&
2106 v8_toolset_for_shell == "host") || 2154 v8_toolset_for_shell == "host") ||
2107 (current_toolchain != host_toolchain && v8_toolset_for_shell == "target") 2155 (current_toolchain != host_toolchain && v8_toolset_for_shell == "target")
2108 2156
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
2395 2443
2396 deps = [ 2444 deps = [
2397 ":fuzzer_support", 2445 ":fuzzer_support",
2398 ] 2446 ]
2399 2447
2400 configs = [ ":internal_config" ] 2448 configs = [ ":internal_config" ]
2401 } 2449 }
2402 2450
2403 v8_fuzzer("wasm_asmjs_fuzzer") { 2451 v8_fuzzer("wasm_asmjs_fuzzer") {
2404 } 2452 }
OLDNEW
« no previous file with comments | « no previous file | src/interpreter/bytecode-peephole-optimizer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698