Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

s390/mm,pages-states: get rid of register asm

There is no reason to use fixed registers for the essa
instruction. Therefore remove the register asm construct.

Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>

authored by

Heiko Carstens and committed by
Vasily Gorbik
2bd67038 7e86f967

+6 -6
+6 -6
arch/s390/mm/page-states.c
··· 31 31 32 32 static inline int cmma_test_essa(void) 33 33 { 34 - register unsigned long tmp asm("0") = 0; 35 - register int rc asm("1"); 34 + unsigned long tmp = 0; 35 + int rc = -EOPNOTSUPP; 36 36 37 37 /* test ESSA_GET_STATE */ 38 38 asm volatile( 39 - " .insn rrf,0xb9ab0000,%1,%1,%2,0\n" 40 - "0: la %0,0\n" 39 + " .insn rrf,0xb9ab0000,%[tmp],%[tmp],%[cmd],0\n" 40 + "0: la %[rc],0\n" 41 41 "1:\n" 42 42 EX_TABLE(0b,1b) 43 - : "=&d" (rc), "+&d" (tmp) 44 - : "i" (ESSA_GET_STATE), "0" (-EOPNOTSUPP)); 43 + : [rc] "+&d" (rc), [tmp] "+&d" (tmp) 44 + : [cmd] "i" (ESSA_GET_STATE)); 45 45 return rc; 46 46 } 47 47