ref: ee1bb69f2d7c086df72a01632b0563c92896e8b1
parent: 7cc30ec6817dec403ec98f1e0da30dfc7473f413
author: Jean-Marc Valin <jmvalin@amazon.com>
date: Mon Nov 27 12:55:27 EST 2023
Only force auto-vectorization for GCC >= 5.1
--- a/dnn/nnet_arch.h
+++ b/dnn/nnet_arch.h
@@ -40,7 +40,8 @@
/* Force vectorization on for DNN code because some of the loops rely on
compiler vectorization rather than explicitly using intrinsics. */
-#ifdef __GNUC__
+#if OPUS_GNUC_PREREQ(5,1)
+#define GCC_POP_OPTIONS
#pragma GCC push_options
#pragma GCC optimize("tree-vectorize")
#endif
@@ -223,7 +224,7 @@
}
}
-#ifdef __GNUC__
+#ifdef GCC_POP_OPTIONS
#pragma GCC pop_options
#endif
--
⑨