s390x: avoid inline assembly for vector loads for clang
authorMarius Hillenbrand <mhillen@linux.ibm.com>
Tue, 1 Sep 2020 10:04:28 +0000 (12:04 +0200)
committerMarius Hillenbrand <mhillen@linux.ibm.com>
Wed, 2 Sep 2020 11:49:30 +0000 (13:49 +0200)
... since clang does not support the instruction format for inline
assembly and also it is not required for current versions of clang.

Signed-off-by: Marius Hillenbrand <mhillen@linux.ibm.com>
kernel/zarch/gemm_vec.c

index 741c094..b7d7cc0 100644 (file)
@@ -172,7 +172,7 @@ static inline vector_float vec_load_hinted(FLOAT const *restrict a) {
        vector_float const *restrict addr = (vector_float const *restrict)a;
        vector_float y;
 
-#if __GNUC__ < 9
+#if __GNUC__ < 9 && !defined(__clang__)
        // hex-encode vl %[out],%[addr],3
        asm(".insn vrx,0xe70000003006,%[out],%[addr],3"
            : [ out ] "=v"(y)