summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <hca@linux.ibm.com>2026-10-01 12:32:38 +0200
committerHeiko Carstens <hca@linux.ibm.com>2026-10-13 17:04:56 +0200
commit345a429724ec783254aa76c10d60bbf588ed5b02 (patch)
tree4c4eb6407dabb34c0133594f23fbf3ee4ed85fd3
parent4ff587ae7fd92d6794a962f3776762d2de191c6b (diff)
s390/word-at-a-time: Convert inline assembly to EX_TABLE_INSN
Convert the load_unaligned_zeropad exception table entries to use EX_TABLE_INSN. With EX_TABLE_INSN entries always point to the faulting instruction, so the duplicate entry and nopr padding are no longer needed and removed. Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
-rw-r--r--arch/s390/include/asm/word-at-a-time.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/s390/include/asm/word-at-a-time.h b/arch/s390/include/asm/word-at-a-time.h
index eaa19dee7699..0b7779c8d5a4 100644
--- a/arch/s390/include/asm/word-at-a-time.h
+++ b/arch/s390/include/asm/word-at-a-time.h
@@ -54,9 +54,8 @@ static inline unsigned long load_unaligned_zeropad(const void *addr)
asm_inline volatile(
"0: lg %[data],0(%[addr])\n"
- "1: nopr %%r7\n"
- EX_TABLE_ZEROPAD(0b, 1b, %[data], %[addr])
- EX_TABLE_ZEROPAD(1b, 1b, %[data], %[addr])
+ "1:\n"
+ EX_TABLE_INSN_ZEROPAD(0b, 1b, %[data], %[addr])
: [data] "=d" (data)
: [addr] "a" (addr), "m" (*(unsigned long *)addr));
return data;