Re: [kvm-unit-tests PATCH] lib: s390x: css: Name inline assembly arguments and clean them up

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue,  4 Feb 2025 09:51:33 +0000
Janosch Frank <frankja@xxxxxxxxxxxxx> wrote:

> Less need to count the operands makes the code easier to read.
> 
> Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx>

Reviewed-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx>


> ---
> 
> This one has been gathering dust for a while.
> rfc->v1: Moved to Q constraint (thanks Heiko)
> 
> ---
>  lib/s390x/css.h | 76 ++++++++++++++++++++++++-------------------------
>  1 file changed, 38 insertions(+), 38 deletions(-)
> 
> diff --git a/lib/s390x/css.h b/lib/s390x/css.h
> index 504b3f14..42c5830c 100644
> --- a/lib/s390x/css.h
> +++ b/lib/s390x/css.h
> @@ -135,11 +135,11 @@ static inline int ssch(unsigned long schid, struct orb *addr)
>  	int cc;
>  
>  	asm volatile(
> -		"	ssch	0(%2)\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28\n"
> -		: "=d" (cc)
> -		: "d" (reg1), "a" (addr), "m" (*addr)
> +		"	ssch	%[addr]\n"
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28\n"
> +		: [cc] "=d" (cc)
> +		: "d" (reg1), [addr] "Q" (*addr)
>  		: "cc", "memory");
>  	return cc;
>  }
> @@ -152,11 +152,11 @@ static inline int stsch(unsigned long schid, struct schib *addr)
>  
>  	asm volatile(
>  		"       tmll    %[bogus_cc],3\n"
> -		"	stsch	0(%3)\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc), "=m" (*addr)
> -		: "d" (reg1), "a" (addr), [bogus_cc] "d" (bogus_cc)
> +		"	stsch	%[addr]\n"
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc), [addr] "=Q" (*addr)
> +		: "d" (reg1), [bogus_cc] "d" (bogus_cc)
>  		: "cc");
>  	return cc;
>  }
> @@ -167,11 +167,11 @@ static inline int msch(unsigned long schid, struct schib *addr)
>  	int cc;
>  
>  	asm volatile(
> -		"	msch	0(%3)\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> -		: "d" (reg1), "m" (*addr), "a" (addr)
> +		"	msch	%[addr]\n"
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc)
> +		: "d" (reg1), [addr] "Q" (*addr)
>  		: "cc");
>  	return cc;
>  }
> @@ -184,11 +184,11 @@ static inline int tsch(unsigned long schid, struct irb *addr)
>  
>  	asm volatile(
>  		"       tmll    %[bogus_cc],3\n"
> -		"	tsch	0(%3)\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc), "=m" (*addr)
> -		: "d" (reg1), "a" (addr), [bogus_cc] "d" (bogus_cc)
> +		"	tsch	%[addr]\n"
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc), [addr] "=Q" (*addr)
> +		: "d" (reg1), [bogus_cc] "d" (bogus_cc)
>  		: "cc");
>  	return cc;
>  }
> @@ -200,9 +200,9 @@ static inline int hsch(unsigned long schid)
>  
>  	asm volatile(
>  		"	hsch\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc)
>  		: "d" (reg1)
>  		: "cc");
>  	return cc;
> @@ -215,9 +215,9 @@ static inline int xsch(unsigned long schid)
>  
>  	asm volatile(
>  		"	xsch\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> +		"	ipm	%[cc]\n"
> +		"	srl	%cc,28"
> +		: [cc] "=d" (cc)
>  		: "d" (reg1)
>  		: "cc");
>  	return cc;
> @@ -230,9 +230,9 @@ static inline int csch(unsigned long schid)
>  
>  	asm volatile(
>  		"	csch\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc)
>  		: "d" (reg1)
>  		: "cc");
>  	return cc;
> @@ -245,9 +245,9 @@ static inline int rsch(unsigned long schid)
>  
>  	asm volatile(
>  		"	rsch\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc)
>  		: "d" (reg1)
>  		: "cc");
>  	return cc;
> @@ -262,9 +262,9 @@ static inline int rchp(unsigned long chpid)
>  	asm volatile(
>  		"       tmll    %[bogus_cc],3\n"
>  		"	rchp\n"
> -		"	ipm	%0\n"
> -		"	srl	%0,28"
> -		: "=d" (cc)
> +		"	ipm	%[cc]\n"
> +		"	srl	%[cc],28"
> +		: [cc] "=d" (cc)
>  		: "d" (reg1), [bogus_cc] "d" (bogus_cc)
>  		: "cc");
>  	return cc;
> @@ -369,9 +369,9 @@ static inline int _chsc(void *p)
>  	int cc;
>  
>  	asm volatile(" .insn   rre,0xb25f0000,%2,0\n"
> -		     " ipm     %0\n"
> -		     " srl     %0,28\n"
> -		     : "=d" (cc), "=m" (p)
> +		     " ipm     %[cc]\n"
> +		     " srl     %[cc],28\n"
> +		     : [cc] "=d" (cc), "=m" (p)
>  		     : "d" (p), "m" (p)
>  		     : "cc");
>  





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux