aboutsummaryrefslogtreecommitdiffhomepage
path: root/BUILD.gn
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2018-03-07 15:09:17 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-03-07 15:09:21 +0000
commit3a4bd34478826c0457a36a8755791faf36a44e5e (patch)
tree48abeba3dff608e8c73d462e031c124dac905306 /BUILD.gn
parent22e536e3a1a09405d1c0e6f071717a726d86e8d4 (diff)
Revert "make SkJumper stages normal Skia code"
This reverts commit 22e536e3a1a09405d1c0e6f071717a726d86e8d4. Reason for revert: wrong include path :/ Original change's description: > make SkJumper stages normal Skia code > > Enough clients are using Clang now that we can say, use Clang to build > if you want these software pipeline stages to go fast. > > This lets us drop the offline build aspect of SkJumper stages, instead > building as part of Skia using the SkOpts framework. > > I think everything should work, except I've (temporarily) removed > AVX-512 support. I will put this back in a follow up. > > I have had to drop Windows down to __vectorcall and our narrower > stage calling convention that keeps the d-registers on the stack. > I tried forcing sysv_abi, but that crashed Clang. :/ > > Added a TODO to up the same narrower stage calling convention > for lowp stages... we just *don't* today, for no good reason. > > Change-Id: Iaaa792ffe4deab3508d2dc5d0008c163c24b3383 > Reviewed-on: https://skia-review.googlesource.com/110641 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Herb Derby <herb@google.com> > Reviewed-by: Florin Malita <fmalita@chromium.org> TBR=mtklein@chromium.org,herb@google.com,fmalita@chromium.org Change-Id: I2bdc709c80cdfa6b13ff24e024b3721bef887f46 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/112741 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'BUILD.gn')
-rw-r--r--BUILD.gn44
1 files changed, 29 insertions, 15 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 2a534a5d6c..f2a69e8e7b 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -48,6 +48,10 @@ declare_args() {
skia_compile_processors = false
skia_lex = false
+ skia_jumper_clang = ""
+ skia_jumper_objdump = ""
+ skia_jumper_ccache = ""
+
skia_skqp_enable_driver_correctness_workarounds = false
skia_skqp_global_error_tolerance = 0
}
@@ -310,20 +314,6 @@ opts("avx") {
}
}
-opts("hsw") {
- enabled = is_x86
- sources = skia_opts.hsw_sources
- if (!is_clang && is_win) {
- cflags = [ "/arch:AVX2" ]
- } else {
- cflags = [
- "-mavx2",
- "-mf16c",
- "-mfma",
- ]
- }
-}
-
# Any feature of Skia that requires third-party code should be optional and use this template.
template("optional") {
if (invoker.enabled) {
@@ -785,7 +775,6 @@ component("skia") {
":fontmgr_fuchsia",
":gpu",
":heif",
- ":hsw",
":jpeg",
":none",
":pdf",
@@ -2112,3 +2101,28 @@ if (skia_enable_tools) {
}
}
}
+
+if (skia_jumper_clang != "") {
+ action("regen_jumper") {
+ script = "src/jumper/build_stages.py"
+
+ inputs = [
+ "src/jumper/SkJumper_stages.cpp",
+ "src/jumper/SkJumper_stages_lowp.cpp",
+ ]
+
+ # GN insists its outputs should go somewhere underneath target_out_dir, so we trick it.
+ outputs = [
+ "$target_out_dir/" +
+ rebase_path("src/jumper/SkJumper_generated.S", target_out_dir),
+ "$target_out_dir/" +
+ rebase_path("src/jumper/SkJumper_generated_win.S", target_out_dir),
+ ]
+
+ args = [
+ skia_jumper_clang,
+ skia_jumper_objdump,
+ skia_jumper_ccache,
+ ] + rebase_path(inputs) + rebase_path(outputs)
+ }
+}