From a612e78a97a29f34f7f9230205da0cc5ed69bed9 Mon Sep 17 00:00:00 2001 From: Rajalakshmi Srinivasaraghavan Date: Mon, 18 Jul 2022 14:48:43 -0500 Subject: [PATCH] POWER: Fix complex dot function failures There are some test failures in complex dot functions when compiling with gcc12. The machine constraints used now do not update all the four elements in the expected result array. Fixing this with a reduced level of optimization. This is not changing any performance numbers but will be converted to C code in future. --- kernel/power/cdot.c | 1 + kernel/power/zdot.c | 1 + 2 files changed, 2 insertions(+) diff --git a/kernel/power/cdot.c b/kernel/power/cdot.c index c53fe0c02..e819ea606 100644 --- a/kernel/power/cdot.c +++ b/kernel/power/cdot.c @@ -29,6 +29,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "common.h" #if defined(POWER10) +#pragma GCC optimize "O1" #include "cdot_microk_power10.c" #else #ifndef HAVE_KERNEL_8 diff --git a/kernel/power/zdot.c b/kernel/power/zdot.c index fe0e9284e..2945b5c60 100644 --- a/kernel/power/zdot.c +++ b/kernel/power/zdot.c @@ -38,6 +38,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #if defined(POWER8) || defined(POWER9) || defined(POWER10) #if defined(__VEC__) || defined(__ALTIVEC__) +#pragma GCC optimize "O1" #include "zdot_microk_power8.c" #endif #endif