POWER: Fix complex dot function failures
authorRajalakshmi Srinivasaraghavan <rajis@linux.ibm.com>
Mon, 18 Jul 2022 19:48:43 +0000 (14:48 -0500)
committerRajalakshmi Srinivasaraghavan <rajis@linux.ibm.com>
Mon, 18 Jul 2022 19:48:43 +0000 (14:48 -0500)
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
kernel/power/zdot.c

index c53fe0c..e819ea6 100644 (file)
@@ -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
index fe0e928..2945b5c 100644 (file)
@@ -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