skia2/gn
Mike Klein 1b9b7d5393 Reland "Reland "make SkJumper stages normal Skia code""
This is a reland of 78cb579f33

This time, lowp stages are controlled by !defined(JUMPER_IS_SCALAR), not
by defined(__clang__).  The two are usually the same, except when we opt
Clang builds into JUMPER_IS_SCALAR artificially.

Some Google3 builds use compilers old enough that they barf when
compiling our NEON code.  It's conceivably also possible to define
JUMPER_IS_SCALAR yourself, but I don't think anyone does that.

Original change's description:
> Reland "make SkJumper stages normal Skia code"
>
> This is a reland of 22e536e3a1
>
> Now with fixed #include paths in SkRasterPipeline_opts.h,
> and -ffp-contract=fast for the :hsw target to minimize
> diffs on non-Windows Clang AVX2/AVX-512 bots.
>
> 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>
>
> Change-Id: I44f2c03d33958e3807747e40904b6351957dd448
> Reviewed-on: https://skia-review.googlesource.com/112742
> Reviewed-by: Mike Klein <mtklein@chromium.org>

Change-Id: I3d71197d4bbb19ca4a94961a97fa2e54d5cbfb0d
Reviewed-on: https://skia-review.googlesource.com/112744
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-03-07 17:32:40 +00:00
..
toolchain BUILD: link and solink uses rsp file 2018-02-10 00:15:31 +00:00
__init__.py Make gn directory importable in python 2017-03-20 17:40:30 +00:00
ar.py GN: quiet alink spam on Mac 2016-11-07 14:19:32 +00:00
bench.gni Revert "Revert "remove unused SkCurveMeasure"" 2018-01-06 18:24:57 +00:00
BUILD.gn set -Wno-implicit-fallthrough on GCC too 2018-02-22 21:05:45 +00:00
BUILDCONFIG.gn BUILD(win): find 'Build Tools for VS 2017', doc update 2018-02-14 21:25:14 +00:00
call.py Add gn plumbing for mdbviz tool 2017-09-05 13:57:44 +00:00
checkdir.py Bundle resources and skps directories into iOS app. 2017-11-29 17:06:25 +00:00
codesign_ios.py Allow different identities for iOS code signing 2017-12-07 20:42:00 +00:00
compile_processors.py switched to infra version of clang-format for skslc 2017-07-27 20:28:50 +00:00
core.gni Reland "Reland "make SkJumper stages normal Skia code"" 2018-03-07 17:32:40 +00:00
cp.py GN: get Angle compiling on Windows. 2016-10-17 16:16:16 +00:00
create_sksl_enums.py Create sksl_enums.inc with UNIX line endings (even on Windows) 2018-02-09 15:13:11 +00:00
effects.gni remove unused SkRasterizer 2018-01-21 18:24:11 +00:00
find_headers.py Add Goma support in gn_flavor. 2017-12-08 20:09:18 +00:00
find_ios_sysroot.py Add iOS simulator support in GN. 2017-03-13 17:21:43 +00:00
flutter_defines.gni Switch MDB GrContextOptions over to Enable style 2018-02-08 16:28:30 +00:00
gen_plist_ios.py Add create_bundle support for GN 2017-11-28 15:29:07 +00:00
gm.gni Remove GrSurfaceOrigin from GrSurfaceDesc. 2018-03-05 18:50:25 +00:00
gn_helpers.py
gn_meta_sln.py Move, rename, and document Visual Studio GN helper script 2016-12-14 16:41:52 +00:00
gn_to_bp_utils.py Add gn_to_bp script for SkQP. 2018-02-02 15:12:20 +00:00
gn_to_bp.py Reland "Reland "make SkJumper stages normal Skia code"" 2018-03-07 17:32:40 +00:00
gn_to_cmake.py Add support for lib_dirs to gn_to_cmake.py. 2016-10-28 15:07:10 +00:00
gpu.gni Fission GrAtlasGlyphCache in two (take 2) 2018-03-01 19:09:14 +00:00
gypi_to_gn.py
highest_version_dir.py Filter Windows SDK and Compiler directories 2017-12-11 20:26:08 +00:00
is_clang.py
opts.gni Reland "Reland "make SkJumper stages normal Skia code"" 2018-03-07 17:32:40 +00:00
pdf.gni Revert "Revert "Add method to sk_gpu_test::TestContext to automatically restore the previous context."" 2017-11-17 16:22:56 +00:00
push_to_android.py skia_android_serial = "auto" 2017-01-12 16:30:17 +00:00
run_sksllex.py Re-land "converted OverdrawColorFilter to SkSL" 2017-10-26 14:58:27 +00:00
samples.gni Resurrect pathfinder in viewer and rename to "bisect" 2018-02-20 20:44:33 +00:00
shared_sources.gni Reland "Reland "make SkJumper stages normal Skia code"" 2018-03-07 17:32:40 +00:00
sksl.gni converted YUVEffect to SkSL 2017-12-22 14:06:45 +00:00
tests.gni Revert "add tiler for SkDraw" 2018-03-07 14:23:01 +00:00
utils.gni Revert "Revert "remove unused SkCurveMeasure"" 2018-01-06 18:24:57 +00:00
xps.gni SkXPS: new document API. 2017-02-06 19:00:28 +00:00