]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
s390/lowcore: Use lghi instead llilh to clear register
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 10 Mar 2025 09:33:43 +0000 (10:33 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Tue, 18 Mar 2025 16:13:05 +0000 (17:13 +0100)
lghi is the fastest way to clear a register. Use that intead of llilh.

Suggested-by: Juergen Christ <jchrist@linux.ibm.com>
Reviewed-by: Juergen Christ <jchrist@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/include/asm/lowcore.h

index ada93ab7802a674e70760b41873178e2ec2f0745..1a31f1f93ed3cd0f8e8a3257f4e962e07ff218f5 100644 (file)
@@ -224,7 +224,7 @@ static __always_inline struct lowcore *get_lowcore(void)
        if (__is_defined(__DECOMPRESSOR))
                return NULL;
        asm_inline(
-               ALTERNATIVE("   llilh   %[lc],0",
+               ALTERNATIVE("   lghi    %[lc],0",
                            "   llilh   %[lc],%[alt]",
                            ALT_FEATURE(MFEATURE_LOWCORE))
                : [lc] "=d" (lc)
@@ -242,7 +242,7 @@ static inline void set_prefix(__u32 address)
 #else /* __ASSEMBLY__ */
 
 .macro GET_LC reg
-       ALTERNATIVE "llilh      \reg,0",                                        \
+       ALTERNATIVE "lghi       \reg,0",                                        \
                __stringify(llilh       \reg, LOWCORE_ALT_ADDRESS >> 16),       \
                ALT_FEATURE(MFEATURE_LOWCORE)
 .endm