mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
s390/cpcmd: Convert to use flag output macros
Use flag output macros in inline asm to allow for better code generation if the compiler has support for the flag output constraint. Reviewed-by: Juergen Christ <jchrist@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
parent
d4e50cfe9c
commit
ca6dd1faa0
1 changed files with 5 additions and 5 deletions
|
|
@ -20,6 +20,7 @@
|
|||
#include <asm/diag.h>
|
||||
#include <asm/ebcdic.h>
|
||||
#include <asm/cpcmd.h>
|
||||
#include <asm/asm.h>
|
||||
|
||||
static DEFINE_SPINLOCK(cpcmd_lock);
|
||||
static char cpcmd_buf[241];
|
||||
|
|
@ -45,12 +46,11 @@ static int diag8_response(int cmdlen, char *response, int *rlen)
|
|||
ry.odd = *rlen;
|
||||
asm volatile(
|
||||
" diag %[rx],%[ry],0x8\n"
|
||||
" ipm %[cc]\n"
|
||||
" srl %[cc],28\n"
|
||||
: [cc] "=&d" (cc), [ry] "+&d" (ry.pair)
|
||||
CC_IPM(cc)
|
||||
: CC_OUT(cc, cc), [ry] "+d" (ry.pair)
|
||||
: [rx] "d" (rx.pair)
|
||||
: "cc");
|
||||
if (cc)
|
||||
: CC_CLOBBER);
|
||||
if (CC_TRANSFORM(cc))
|
||||
*rlen += ry.odd;
|
||||
else
|
||||
*rlen = ry.odd;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue