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

Side by Side Diff: runtime/bin/BUILD.gn

Issue 2902313004: CoreJIT snapshots without training. (Closed)
Patch Set: gn Created 3 years, 7 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 | runtime/bin/gen_snapshot.cc » ('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 (c) 2014, the Dart project authors. Please see the AUTHORS file 1 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 # for details. All rights reserved. Use of this source code is governed by a 2 # for details. All rights reserved. Use of this source code is governed by a
3 # BSD-style license that can be found in the LICENSE file. 3 # BSD-style license that can be found in the LICENSE file.
4 4
5 import("gypi_contents.gni") 5 import("gypi_contents.gni")
6 import("../runtime_args.gni") 6 import("../runtime_args.gni")
7 import("../../build/compiled_action.gni") 7 import("../../build/compiled_action.gni")
8 8
9 declare_args() {
10 # Controls the kind of core snapshot linked into the standalone VM. Using a
11 # core-jit snapshot breaks the ability to change various flags that affect
12 # code generation.
13 core_snapshot_kind = "core"
zra 2017/05/31 17:10:31 dart_core_snapshot_kind
rmacnak 2017/05/31 19:53:01 Done.
14 }
15
9 # Generate a resources.cc file for the service isolate without Observatory. 16 # Generate a resources.cc file for the service isolate without Observatory.
10 action("gen_resources_cc") { 17 action("gen_resources_cc") {
11 visibility = [ ":*" ] # Only targets in this file can see this. 18 visibility = [ ":*" ] # Only targets in this file can see this.
12 script = "../tools/create_resources.py" 19 script = "../tools/create_resources.py"
13 inputs = [ 20 inputs = [
14 "../tools/create_resources.py", 21 "../tools/create_resources.py",
15 ] 22 ]
16 23
17 # The path below is hard coded for the Mojo and Flutter trees. When moving 24 # The path below is hard coded for the Mojo and Flutter trees. When moving
18 # the Dart runtime to gn, this path might need to be updated. 25 # the Dart runtime to gn, this path might need to be updated.
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 460
454 dart_io("standalone_dart_io") { 461 dart_io("standalone_dart_io") {
455 extra_sources = [] 462 extra_sources = []
456 } 463 }
457 464
458 action("generate_snapshot_bin") { 465 action("generate_snapshot_bin") {
459 deps = [ 466 deps = [
460 "../bin:gen_snapshot($host_toolchain)", 467 "../bin:gen_snapshot($host_toolchain)",
461 ] 468 ]
462 469
463 vm_isolate_snapshot = "$target_gen_dir/vm_isolate_snapshot.bin" 470 vm_snapshot_data = "$target_gen_dir/vm_snapshot_data.bin"
464 isolate_snapshot = "$target_gen_dir/isolate_snapshot.bin" 471 vm_snapshot_instructions = "$target_gen_dir/vm_snapshot_instructions.bin"
472 isolate_snapshot_data = "$target_gen_dir/isolate_snapshot_data.bin"
473 isolate_snapshot_instructions =
474 "$target_gen_dir/isolate_snapshot_instructions.bin"
465 gen_snapshot_stamp_file = "$target_gen_dir/gen_snapshot.stamp" 475 gen_snapshot_stamp_file = "$target_gen_dir/gen_snapshot.stamp"
466 outputs = [ 476 outputs = [
467 vm_isolate_snapshot, 477 vm_snapshot_data,
468 isolate_snapshot, 478 vm_snapshot_instructions,
479 isolate_snapshot_data,
480 isolate_snapshot_instructions,
469 gen_snapshot_stamp_file, 481 gen_snapshot_stamp_file,
470 ] 482 ]
471 483
472 gen_snapshot_dir = 484 gen_snapshot_dir =
473 get_label_info("../bin:gen_snapshot($host_toolchain)", "root_out_dir") 485 get_label_info("../bin:gen_snapshot($host_toolchain)", "root_out_dir")
474 486
475 script = rebase_path("../tools/create_snapshot_bin.py") 487 script = rebase_path("../tools/create_snapshot_bin.py")
476 args = [ 488 args = [
477 "--executable", 489 "--executable",
478 rebase_path("$gen_snapshot_dir/gen_snapshot"), 490 rebase_path("$gen_snapshot_dir/gen_snapshot"),
479 "--snapshot_kind", 491 "--snapshot_kind",
480 "core", 492 core_snapshot_kind,
481 "--vm_output_bin", 493 "--vm_output_bin",
482 rebase_path(vm_isolate_snapshot, root_build_dir), 494 rebase_path(vm_snapshot_data, root_build_dir),
495 "--vm_instructions_output_bin",
496 rebase_path(vm_snapshot_instructions, root_build_dir),
483 "--isolate_output_bin", 497 "--isolate_output_bin",
484 rebase_path(isolate_snapshot, root_build_dir), 498 rebase_path(isolate_snapshot_data, root_build_dir),
485 "--target_os", 499 "--isolate_instructions_output_bin",
486 current_os, 500 rebase_path(isolate_snapshot_instructions, root_build_dir),
487 "--timestamp_file", 501 "--timestamp_file",
488 rebase_path(gen_snapshot_stamp_file, root_build_dir), 502 rebase_path(gen_snapshot_stamp_file, root_build_dir),
489 ] 503 ]
490 } 504 }
491 505
492 # Generates an assembly file defining a given symbol with the bytes from a 506 # Generates an assembly file defining a given symbol with the bytes from a
493 # binary file. Places the symbol in a text section if 'executable' is true, 507 # binary file. Places the symbol in a text section if 'executable' is true,
494 # otherwise places the symbol in a read-only data section. 508 # otherwise places the symbol in a read-only data section.
495 template("bin_to_assembly") { 509 template("bin_to_assembly") {
496 assert(defined(invoker.deps), "Must define deps") 510 assert(defined(invoker.deps), "Must define deps")
(...skipping 25 matching lines...) Expand all
522 outputs = [ 536 outputs = [
523 invoker.output, 537 invoker.output,
524 ] 538 ]
525 } 539 }
526 } 540 }
527 541
528 bin_to_assembly("vm_snapshot_data_assembly") { 542 bin_to_assembly("vm_snapshot_data_assembly") {
529 deps = [ 543 deps = [
530 ":generate_snapshot_bin", 544 ":generate_snapshot_bin",
531 ] 545 ]
532 input = "$target_gen_dir/vm_isolate_snapshot.bin" 546 input = "$target_gen_dir/vm_snapshot_data.bin"
533 output = "$target_gen_dir/vm_snapshot_data.S" 547 output = "$target_gen_dir/vm_snapshot_data.S"
534 symbol = "kDartVmSnapshotData" 548 symbol = "kDartVmSnapshotData"
535 executable = false 549 executable = false
536 } 550 }
537 551
538 bin_to_assembly("vm_snapshot_instructions_assembly") { 552 bin_to_assembly("vm_snapshot_instructions_assembly") {
539 deps = [] 553 deps = [
540 input = "../tools/empty.bin" 554 ":generate_snapshot_bin",
555 ]
556 input = "$target_gen_dir/vm_snapshot_instructions.bin"
541 output = "$target_gen_dir/vm_snapshot_instructions.S" 557 output = "$target_gen_dir/vm_snapshot_instructions.S"
542 symbol = "kDartVmSnapshotInstructions" 558 symbol = "kDartVmSnapshotInstructions"
543 executable = true 559 executable = true
544 } 560 }
545 561
546 bin_to_assembly("isolate_snapshot_data_assembly") { 562 bin_to_assembly("isolate_snapshot_data_assembly") {
547 deps = [ 563 deps = [
548 ":generate_snapshot_bin", 564 ":generate_snapshot_bin",
549 ] 565 ]
550 input = "$target_gen_dir/isolate_snapshot.bin" 566 input = "$target_gen_dir/isolate_snapshot_data.bin"
551 output = "$target_gen_dir/isolate_snapshot_data.S" 567 output = "$target_gen_dir/isolate_snapshot_data.S"
552 symbol = "kDartCoreIsolateSnapshotData" 568 symbol = "kDartCoreIsolateSnapshotData"
553 executable = false 569 executable = false
554 } 570 }
555 571
556 bin_to_assembly("isolate_snapshot_instructions_assembly") { 572 bin_to_assembly("isolate_snapshot_instructions_assembly") {
557 deps = [] 573 deps = [
558 input = "../tools/empty.bin" 574 ":generate_snapshot_bin",
575 ]
576 input = "$target_gen_dir/isolate_snapshot_instructions.bin"
559 output = "$target_gen_dir/isolate_snapshot_instructions.S" 577 output = "$target_gen_dir/isolate_snapshot_instructions.S"
560 symbol = "kDartCoreIsolateSnapshotInstructions" 578 symbol = "kDartCoreIsolateSnapshotInstructions"
561 executable = true 579 executable = true
562 } 580 }
563 581
564 source_set("dart_snapshot_cc") { 582 source_set("dart_snapshot_cc") {
565 deps = [ 583 deps = [
566 ":isolate_snapshot_data_assembly", 584 ":isolate_snapshot_data_assembly",
567 ":isolate_snapshot_instructions_assembly", 585 ":isolate_snapshot_instructions_assembly",
568 ":vm_snapshot_data_assembly", 586 ":vm_snapshot_data_assembly",
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after
912 ] 930 ]
913 if (is_linux || is_android) { 931 if (is_linux || is_android) {
914 cflags = [ "-fPIC" ] 932 cflags = [ "-fPIC" ]
915 } 933 }
916 if (is_win) { 934 if (is_win) {
917 libs = [ "dart.lib" ] 935 libs = [ "dart.lib" ]
918 abs_root_out_dir = rebase_path(root_out_dir) 936 abs_root_out_dir = rebase_path(root_out_dir)
919 ldflags = [ "/LIBPATH:$abs_root_out_dir" ] 937 ldflags = [ "/LIBPATH:$abs_root_out_dir" ]
920 } 938 }
921 } 939 }
OLDNEW
« no previous file with comments | « no previous file | runtime/bin/gen_snapshot.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698