Skip to content

Commit 2d6c000

Browse files
hcahcaVasily Gorbik
authored andcommitted
s390/ap: use insn format for new instructions
Use insn format with instruction format specifier instead of plain longs. This way it is also more obvious that code instead of data is generated. The generated code is identical. Reviewed-by: Harald Freudenberger <freude@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
1 parent 6982dba commit 2d6c000

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

  • arch/s390/include/asm

arch/s390/include/asm/ap.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ static inline bool ap_instructions_available(void)
6363
" lgr 0,%[reg0]\n" /* qid into gr0 */
6464
" lghi 1,0\n" /* 0 into gr1 */
6565
" lghi 2,0\n" /* 0 into gr2 */
66-
" .long 0xb2af0000\n" /* PQAP(TAPQ) */
66+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(TAPQ) */
6767
"0: la %[reg1],1\n" /* 1 into reg1 */
6868
"1:\n"
6969
EX_TABLE(0b, 1b)
@@ -88,7 +88,7 @@ static inline struct ap_queue_status ap_tapq(ap_qid_t qid, unsigned long *info)
8888
asm volatile(
8989
" lgr 0,%[qid]\n" /* qid into gr0 */
9090
" lghi 2,0\n" /* 0 into gr2 */
91-
" .long 0xb2af0000\n" /* PQAP(TAPQ) */
91+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(TAPQ) */
9292
" lgr %[reg1],1\n" /* gr1 (status) into reg1 */
9393
" lgr %[reg2],2\n" /* gr2 into reg2 */
9494
: [reg1] "=&d" (reg1), [reg2] "=&d" (reg2)
@@ -129,7 +129,7 @@ static inline struct ap_queue_status ap_rapq(ap_qid_t qid)
129129

130130
asm volatile(
131131
" lgr 0,%[reg0]\n" /* qid arg into gr0 */
132-
" .long 0xb2af0000\n" /* PQAP(RAPQ) */
132+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(RAPQ) */
133133
" lgr %[reg1],1\n" /* gr1 (status) into reg1 */
134134
: [reg1] "=&d" (reg1)
135135
: [reg0] "d" (reg0)
@@ -150,7 +150,7 @@ static inline struct ap_queue_status ap_zapq(ap_qid_t qid)
150150

151151
asm volatile(
152152
" lgr 0,%[reg0]\n" /* qid arg into gr0 */
153-
" .long 0xb2af0000\n" /* PQAP(ZAPQ) */
153+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(ZAPQ) */
154154
" lgr %[reg1],1\n" /* gr1 (status) into reg1 */
155155
: [reg1] "=&d" (reg1)
156156
: [reg0] "d" (reg0)
@@ -192,7 +192,7 @@ static inline int ap_qci(struct ap_config_info *config)
192192
asm volatile(
193193
" lgr 0,%[reg0]\n" /* QCI fc into gr0 */
194194
" lgr 2,%[reg2]\n" /* ptr to config into gr2 */
195-
" .long 0xb2af0000\n" /* PQAP(QCI) */
195+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(QCI) */
196196
"0: la %[reg1],0\n" /* good case, QCI fc available */
197197
"1:\n"
198198
EX_TABLE(0b, 1b)
@@ -249,7 +249,7 @@ static inline struct ap_queue_status ap_aqic(ap_qid_t qid,
249249
" lgr 0,%[reg0]\n" /* qid param into gr0 */
250250
" lgr 1,%[reg1]\n" /* irq ctrl into gr1 */
251251
" lgr 2,%[reg2]\n" /* ni addr into gr2 */
252-
" .long 0xb2af0000\n" /* PQAP(AQIC) */
252+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(AQIC) */
253253
" lgr %[reg1],1\n" /* gr1 (status) into reg1 */
254254
: [reg1] "+&d" (reg1)
255255
: [reg0] "d" (reg0), [reg2] "d" (reg2)
@@ -299,7 +299,7 @@ static inline struct ap_queue_status ap_qact(ap_qid_t qid, int ifbit,
299299
asm volatile(
300300
" lgr 0,%[reg0]\n" /* qid param into gr0 */
301301
" lgr 1,%[reg1]\n" /* qact in info into gr1 */
302-
" .long 0xb2af0000\n" /* PQAP(QACT) */
302+
" .insn rre,0xb2af0000,0,0\n" /* PQAP(QACT) */
303303
" lgr %[reg1],1\n" /* gr1 (status) into reg1 */
304304
" lgr %[reg2],2\n" /* qact out info into reg2 */
305305
: [reg1] "+&d" (reg1), [reg2] "=&d" (reg2)

0 commit comments

Comments
 (0)