Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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/features.gni") | 5 import("//build/config/features.gni") |
| 6 import("//build/config/ui.gni") | 6 import("//build/config/ui.gni") |
| 7 if (cpu_arch == "arm") { | 7 if (cpu_arch == "arm") { |
| 8 import("//build/config/arm.gni") | 8 import("//build/config/arm.gni") |
| 9 } | 9 } |
| 10 | 10 |
| (...skipping 527 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 538 } | 538 } |
| 539 } | 539 } |
| 540 | 540 |
| 541 # Separated out so it can be compiled with different flags for SSE. | 541 # Separated out so it can be compiled with different flags for SSE. |
| 542 source_set("skia_opts") { | 542 source_set("skia_opts") { |
| 543 cflags = [] | 543 cflags = [] |
| 544 defines = [] | 544 defines = [] |
| 545 | 545 |
| 546 if (cpu_arch == "x86" || cpu_arch == "x64") { | 546 if (cpu_arch == "x86" || cpu_arch == "x64") { |
| 547 sources = [ | 547 sources = [ |
| 548 "//third_party/skia/src/opts/SkTextureCompression_opts_none.cpp", | |
| 549 | |
| 548 # SSE 2 | 550 # SSE 2 |
| 549 "//third_party/skia/src/opts/opts_check_x86.cpp", | 551 "//third_party/skia/src/opts/opts_check_x86.cpp", |
| 550 "//third_party/skia/src/opts/SkBitmapFilter_opts_SSE2.cpp", | 552 "//third_party/skia/src/opts/SkBitmapFilter_opts_SSE2.cpp", |
| 551 "//third_party/skia/src/opts/SkBitmapProcState_opts_SSE2.cpp", | 553 "//third_party/skia/src/opts/SkBitmapProcState_opts_SSE2.cpp", |
| 552 "//third_party/skia/src/opts/SkBlitRect_opts_SSE2.cpp", | 554 "//third_party/skia/src/opts/SkBlitRect_opts_SSE2.cpp", |
| 553 "//third_party/skia/src/opts/SkBlitRow_opts_SSE2.cpp", | 555 "//third_party/skia/src/opts/SkBlitRow_opts_SSE2.cpp", |
| 554 "//third_party/skia/src/opts/SkBlurImage_opts_SSE2.cpp", | 556 "//third_party/skia/src/opts/SkBlurImage_opts_SSE2.cpp", |
| 555 "//third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp", | 557 "//third_party/skia/src/opts/SkMorphology_opts_SSE2.cpp", |
| 556 "//third_party/skia/src/opts/SkUtils_opts_SSE2.cpp", | 558 "//third_party/skia/src/opts/SkUtils_opts_SSE2.cpp", |
| 557 "//third_party/skia/src/opts/SkXfermode_opts_SSE2.cpp", | 559 "//third_party/skia/src/opts/SkXfermode_opts_SSE2.cpp", |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 576 } else { # x64 | 578 } else { # x64 |
| 577 sources += [ "//third_party/skia/src/opts/SkBlitRow_opts_SSE4_x64_asm.S" ] | 579 sources += [ "//third_party/skia/src/opts/SkBlitRow_opts_SSE4_x64_asm.S" ] |
| 578 } | 580 } |
| 579 | 581 |
| 580 if (is_linux || is_mac) { | 582 if (is_linux || is_mac) { |
| 581 cflags += [ "-msse4.1" ] | 583 cflags += [ "-msse4.1" ] |
| 582 } | 584 } |
| 583 } else if (cpu_arch == "arm") { | 585 } else if (cpu_arch == "arm") { |
| 584 sources = [ | 586 sources = [ |
| 585 "//third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp", | 587 "//third_party/skia/src/opts/SkBitmapProcState_opts_arm.cpp", |
| 588 "//third_party/skia/src/opts/SkTextureCompression_opts_arm.cpp", | |
| 586 ] | 589 ] |
| 587 | 590 |
| 588 # The assembly uses the frame pointer register (r7 in Thumb/r11 in | 591 # The assembly uses the frame pointer register (r7 in Thumb/r11 in |
| 589 # ARM), the compiler doesn't like that. | 592 # ARM), the compiler doesn't like that. |
| 590 cflags += [ "-fomit-frame-pointer" ] | 593 cflags += [ "-fomit-frame-pointer" ] |
| 591 | 594 |
| 592 if (arm_version >= 7) { | 595 if (arm_version >= 7) { |
| 593 if (arm_use_neon || arm_optionally_use_neon) { | 596 if (arm_use_neon || arm_optionally_use_neon) { |
| 594 sources += [ | 597 sources += [ |
| 595 "//third_party/skia/src/opts/memset16_neon.S", | |
| 596 "//third_party/skia/src/opts/memset32_neon.S", | |
| 597 "//third_party/skia/src/opts/SkBitmapProcState_arm_neon.cpp", | 598 "//third_party/skia/src/opts/SkBitmapProcState_arm_neon.cpp", |
| 598 "//third_party/skia/src/opts/SkBitmapProcState_matrixProcs_neon.cpp", | 599 "//third_party/skia/src/opts/SkBitmapProcState_matrixProcs_neon.cpp", |
| 599 "//third_party/skia/src/opts/SkBitmapProcState_matrix_clamp_neon.h", | 600 "//third_party/skia/src/opts/SkBitmapProcState_matrix_clamp_neon.h", |
| 600 "//third_party/skia/src/opts/SkBitmapProcState_matrix_repeat_neon.h", | 601 "//third_party/skia/src/opts/SkBitmapProcState_matrix_repeat_neon.h", |
| 601 "//third_party/skia/src/opts/SkBlitMask_opts_arm_neon.cpp", | 602 "//third_party/skia/src/opts/SkBlitMask_opts_arm_neon.cpp", |
| 602 "//third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp", | 603 "//third_party/skia/src/opts/SkBlitRow_opts_arm_neon.cpp", |
| 603 "//third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp", | |
| 604 "//third_party/skia/src/opts/SkBlurImage_opts_neon.cpp", | 604 "//third_party/skia/src/opts/SkBlurImage_opts_neon.cpp", |
| 605 "//third_party/skia/src/opts/SkMorphology_opts_neon.cpp", | 605 "//third_party/skia/src/opts/SkMorphology_opts_neon.cpp", |
| 606 "//third_party/skia/src/opts/SkTextureCompression_opts_neon.cpp", | |
| 607 "//third_party/skia/src/opts/SkXfermode_opts_arm_neon.cpp", | |
| 608 "//third_party/skia/src/opts/memset16_neon.S", | |
| 609 "//third_party/skia/src/opts/memset32_neon.S", | |
| 606 ] | 610 ] |
| 607 | 611 |
| 608 cflags += [ | 612 cflags += [ |
| 609 # The neon assembly contains conditional instructions which aren't | 613 # The neon assembly contains conditional instructions which aren't |
| 610 # enclosed in an IT block. The assembler complains without this | 614 # enclosed in an IT block. The assembler complains without this |
| 611 # option. See #86592. | 615 # option. See #86592. |
| 612 "-Wa,-mimplicit-it=always", | 616 "-Wa,-mimplicit-it=always", |
| 613 ] | 617 ] |
| 614 | 618 |
| 615 # Root build config sets -mfpu=$arm_fpu, which we expect to be neon | 619 # Root build config sets -mfpu=$arm_fpu, which we expect to be neon |
| 616 # when running this. | 620 # when running this. |
| 617 assert(arm_fpu == "neon") | 621 assert(arm_fpu == "neon") |
| 618 | 622 |
| 619 #ldflags = [ | 623 #ldflags = [ |
| 620 # "-march=armv7-a", | 624 # "-march=armv7-a", |
| 621 # "-Wl,--fix-cortex-a8", | 625 # "-Wl,--fix-cortex-a8", |
| 622 #] | 626 #] |
| 623 } | 627 } |
| 624 | 628 |
| 625 if (arm_use_neon) { | 629 if (arm_use_neon) { |
| 626 defines += [ "__ARM_HAVE_NEON" ] | 630 defines += [ "__ARM_HAVE_NEON" ] |
| 627 } | 631 } |
| 628 if (arm_optionally_use_neon) { | 632 if (arm_optionally_use_neon) { |
| 629 defines += [ "__ARM_HAVE_OPTIONAL_NEON_SUPPORT" ] | 633 defines += [ "__ARM_HAVE_OPTIONAL_NEON_SUPPORT" ] |
| 630 } | 634 } |
| 631 } | 635 } |
| 632 | 636 |
| 633 # Non-Neon ARM code. | 637 # Non-Neon ARM code. |
|
krajcevski
2014/07/14 18:52:57
Does one of these need a:
"//third_party/sk
| |
| 634 if (arm_version < 7 || (!arm_use_neon && arm_optionally_use_neon)) { | 638 if (arm_version < 7 || (!arm_use_neon && arm_optionally_use_neon)) { |
| 635 sources += [ "//third_party/skia/src/opts/memset.arm.S" ] | 639 sources += [ "//third_party/skia/src/opts/memset.arm.S" ] |
| 636 } | 640 } |
| 637 | 641 |
| 638 if (arm_version < 6) { | 642 if (arm_version < 6) { |
| 639 sources += [ | 643 sources += [ |
| 640 "//third_party/skia/src/opts/SkBlitMask_opts_none.cpp", | 644 "//third_party/skia/src/opts/SkBlitMask_opts_none.cpp", |
| 641 "//third_party/skia/src/opts/SkBlitRow_opts_none.cpp", | 645 "//third_party/skia/src/opts/SkBlitRow_opts_none.cpp", |
| 642 "//third_party/skia/src/opts/SkUtils_opts_none.cpp", | 646 "//third_party/skia/src/opts/SkUtils_opts_none.cpp", |
| 643 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", | 647 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", |
| (...skipping 12 matching lines...) Expand all Loading... | |
| 656 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", | 660 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", |
| 657 ] | 661 ] |
| 658 } | 662 } |
| 659 | 663 |
| 660 } else if (cpu_arch == "mipsel") { | 664 } else if (cpu_arch == "mipsel") { |
| 661 cflags += [ "-fomit-frame-pointer" ] | 665 cflags += [ "-fomit-frame-pointer" ] |
| 662 sources = [ | 666 sources = [ |
| 663 "//third_party/skia/src/opts/SkBitmapProcState_opts_none.cpp", | 667 "//third_party/skia/src/opts/SkBitmapProcState_opts_none.cpp", |
| 664 "//third_party/skia/src/opts/SkBlitMask_opts_none.cpp", | 668 "//third_party/skia/src/opts/SkBlitMask_opts_none.cpp", |
| 665 "//third_party/skia/src/opts/SkBlitRow_opts_none.cpp", | 669 "//third_party/skia/src/opts/SkBlitRow_opts_none.cpp", |
| 670 "//third_party/skia/src/opts/SkBlurImage_opts_none.cpp", | |
| 671 "//third_party/skia/src/opts/SkMorphology_opts_none.cpp", | |
| 672 "//third_party/skia/src/opts/SkTextureCompression_opts_none.cpp", | |
| 666 "//third_party/skia/src/opts/SkUtils_opts_none.cpp", | 673 "//third_party/skia/src/opts/SkUtils_opts_none.cpp", |
| 667 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", | 674 "//third_party/skia/src/opts/SkXfermode_opts_none.cpp", |
| 668 "//third_party/skia/src/opts/SkMorphology_opts_none.cpp", | |
| 669 "//third_party/skia/src/opts/SkBlurImage_opts_none.cpp", | |
| 670 ] | 675 ] |
| 671 } else { | 676 } else { |
| 672 assert(false, "Need to port cpu specific stuff from skia_library_opts.gyp") | 677 assert(false, "Need to port cpu specific stuff from skia_library_opts.gyp") |
| 673 } | 678 } |
| 674 | 679 |
| 675 configs -= [ "//build/config/compiler:chromium_code" ] | 680 configs -= [ "//build/config/compiler:chromium_code" ] |
| 676 configs += [ | 681 configs += [ |
| 677 ":skia_config", | 682 ":skia_config", |
| 678 "//build/config/compiler:no_chromium_code" | 683 "//build/config/compiler:no_chromium_code" |
| 679 ] | 684 ] |
| 680 | 685 |
| 681 deps = [ | 686 deps = [ |
| 682 "//base", | 687 "//base", |
| 683 ] | 688 ] |
| 684 | 689 |
| 685 visibility = ":skia" | 690 visibility = ":skia" |
| 686 } | 691 } |
| OLD | NEW |