port skx opts to old style

Change-Id: I364365455cc3580f38ddd189f00050ea9e2238a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/294565
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
diff --git a/gn/core.gni b/gn/core.gni
index dbfa92d..2050d70 100644
--- a/gn/core.gni
+++ b/gn/core.gni
@@ -272,7 +272,6 @@
   "$_src/core/SkOSFile.h",
   "$_src/core/SkOpts.cpp",
   "$_src/core/SkOpts.h",
-  "$_src/core/SkOpts_skx.cpp",
   "$_src/core/SkOrderedReadBuffer.h",
   "$_src/core/SkOverdrawCanvas.cpp",
   "$_src/core/SkPaint.cpp",
diff --git a/src/core/SkOpts_skx.cpp b/src/core/SkOpts_skx.cpp
deleted file mode 100644
index 9341406..0000000
--- a/src/core/SkOpts_skx.cpp
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright 2020 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "src/core/SkOpts.h"
-
-#if defined(SK_CPU_X86)
-
-    // Turn on SKX feature set.
-    #if defined(__clang__)
-        #pragma clang attribute push(__attribute__((target("avx512f,avx512dq,avx512cd,avx512bw,avx512vl"))), apply_to=function)
-    #elif defined(__GNUC__)
-        #pragma GCC push_options
-        #pragma GCC target("avx512f,avx512dq,avx512cd,avx512bw,avx512vl")
-    #endif
-
-    // Let our code in *_opts.h know we want SKX features.
-    #undef  SK_CPU_SSE_LEVEL
-    #define SK_CPU_SSE_LEVEL SK_CPU_SSE_LEVEL_SKX
-
-    #if defined(__clang__) && defined(_MSC_VER)
-        // clang-cl's immintrin.h is bizarrely annoying, not including the
-        // various foointrin.h unless the __FOO__ flag is also defined (i.e.
-        // you used command-line flags to set the features instead of attributes).
-        // MSVC itself doesn't work this way, nor does non-_MSC_VER clang.  :/
-        #define __SSE__ 1
-        #define __SSE2__ 1
-        #define __SSE3__ 1
-        #define __SSSE3__ 1
-        #define __SSE4_1__ 1
-        #define __SSE4_2__ 1
-        #define __AVX__ 1
-        #define __F16C__ 1
-        #define __AVX2__ 1
-        #define __FMA__ 1
-        #define __AVX512F__ 1
-        #define __AVX512DQ__ 1
-        #define __AVX512CD__ 1
-        #define __AVX512BW__ 1
-        #define __AVX512VL__ 1
-    #endif
-
-    #define SK_OPTS_NS skx
-    #include "src/opts/SkBlitRow_opts.h"
-    #include "src/opts/SkVM_opts.h"
-
-    namespace SkOpts {
-        void Init_skx() {
-            blit_row_s32a_opaque = SK_OPTS_NS::blit_row_s32a_opaque;
-            interpret_skvm = SK_OPTS_NS::interpret_skvm;
-        }
-    }
-
-    #if defined(__clang__)
-        #pragma clang attribute pop
-    #elif defined(__GNUC__)
-        #pragma GCC pop_options
-    #endif
-
-#endif//defined(SK_CPU_X86)
diff --git a/src/opts/SkOpts_skx.cpp b/src/opts/SkOpts_skx.cpp
index 23f18e1..043af89 100644
--- a/src/opts/SkOpts_skx.cpp
+++ b/src/opts/SkOpts_skx.cpp
@@ -5,4 +5,15 @@
  * found in the LICENSE file.
  */
 
-// Intentionally empty, to be filled in.
+#include "src/core/SkOpts.h"
+
+#define SK_OPTS_NS skx
+#include "src/opts/SkBlitRow_opts.h"
+#include "src/opts/SkVM_opts.h"
+
+namespace SkOpts {
+    void Init_skx() {
+        blit_row_s32a_opaque = SK_OPTS_NS::blit_row_s32a_opaque;
+        interpret_skvm = SK_OPTS_NS::interpret_skvm;
+    }
+}