Skip to content

Commit 37450e0

Browse files
committed
s390/processor: Add __forward_psw() helper
Similar to __rewind_psw() add the counter part __forward_psw(). This helps to make code more readable if a PSW address has to be forwarded, since it is more natural to write addr = __forward_psw(psw, ilen); instead of addr = __rewind_psw(psw, -ilen); This renames also the ilc parameter of __rewind_psw() to ilen, since the parameter reflects an instruction length, and not an instruction length code. Also change the type of ilen from unsigned long to long so it reflects that lengths can be negative or positive. Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
1 parent 14e4e41 commit 37450e0

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

arch/s390/include/asm/processor.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -379,14 +379,19 @@ static inline void local_mcck_enable(void)
379379
/*
380380
* Rewind PSW instruction address by specified number of bytes.
381381
*/
382-
static inline unsigned long __rewind_psw(psw_t psw, unsigned long ilc)
382+
static inline unsigned long __rewind_psw(psw_t psw, long ilen)
383383
{
384384
unsigned long mask;
385385

386386
mask = (psw.mask & PSW_MASK_EA) ? -1UL :
387387
(psw.mask & PSW_MASK_BA) ? (1UL << 31) - 1 :
388388
(1UL << 24) - 1;
389-
return (psw.addr - ilc) & mask;
389+
return (psw.addr - ilen) & mask;
390+
}
391+
392+
static inline unsigned long __forward_psw(psw_t psw, long ilen)
393+
{
394+
return __rewind_psw(psw, -ilen);
390395
}
391396

392397
/*

0 commit comments

Comments
 (0)