From d99aea73b4de2357095e1059637ef5427e9473e8 Mon Sep 17 00:00:00 2001 From: Heiko Carstens Date: Mon, 14 Jun 2021 21:30:44 +0200 Subject: s390/facility: get rid of register asm Signed-off-by: Heiko Carstens Signed-off-by: Vasily Gorbik --- arch/s390/include/asm/facility.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'arch/s390/include/asm/facility.h') diff --git a/arch/s390/include/asm/facility.h b/arch/s390/include/asm/facility.h index 948e2616fe9c..e3aa354ab9f4 100644 --- a/arch/s390/include/asm/facility.h +++ b/arch/s390/include/asm/facility.h @@ -64,13 +64,15 @@ static inline int test_facility(unsigned long nr) static inline unsigned long __stfle_asm(u64 *stfle_fac_list, int size) { - register unsigned long reg0 asm("0") = size - 1; + unsigned long reg0 = size - 1; asm volatile( - ".insn s,0xb2b00000,0(%1)" /* stfle */ - : "+d" (reg0) - : "a" (stfle_fac_list) - : "memory", "cc"); + " lgr 0,%[reg0]\n" + " .insn s,0xb2b00000,%[list]\n" /* stfle */ + " lgr %[reg0],0\n" + : [reg0] "+&d" (reg0), [list] "+Q" (*stfle_fac_list) + : + : "memory", "cc", "0"); return reg0; } -- cgit v1.2.3