1 /* SPDX-License-Identifier: GPL-2.0 */ 2 3 #include <linux/export.h> 4 #include <linux/linkage.h> 5 #include <asm/nospec-insn.h> 6 7 .section .noinstr.text, "ax" 8 9 GEN_BR_THUNK %r14 10 11 SYM_FUNC_START(__ashlti3) 12 lmg %r0,%r1,0(%r3) 13 cije %r4,0,1f 14 lhi %r3,64 15 sr %r3,%r4 16 jnh 0f 17 srlg %r3,%r1,0(%r3) 18 sllg %r0,%r0,0(%r4) 19 sllg %r1,%r1,0(%r4) 20 ogr %r0,%r3 21 j 1f 22 0: sllg %r0,%r1,-64(%r4) 23 lghi %r1,0 24 1: stmg %r0,%r1,0(%r2) 25 BR_EX %r14 26 SYM_FUNC_END(__ashlti3) 27 EXPORT_SYMBOL(__ashlti3) 28 29 SYM_FUNC_START(__ashrti3) 30 lmg %r0,%r1,0(%r3) 31 cije %r4,0,1f 32 lhi %r3,64 33 sr %r3,%r4 34 jnh 0f 35 sllg %r3,%r0,0(%r3) 36 srlg %r1,%r1,0(%r4) 37 srag %r0,%r0,0(%r4) 38 ogr %r1,%r3 39 j 1f 40 0: srag %r1,%r0,-64(%r4) 41 srag %r0,%r0,63 42 1: stmg %r0,%r1,0(%r2) 43 BR_EX %r14 44 SYM_FUNC_END(__ashrti3) 45 EXPORT_SYMBOL(__ashrti3) 46 47 SYM_FUNC_START(__lshrti3) 48 lmg %r0,%r1,0(%r3) 49 cije %r4,0,1f 50 lhi %r3,64 51 sr %r3,%r4 52 jnh 0f 53 sllg %r3,%r0,0(%r3) 54 srlg %r1,%r1,0(%r4) 55 srlg %r0,%r0,0(%r4) 56 ogr %r1,%r3 57 j 1f 58 0: srlg %r1,%r0,-64(%r4) 59 lghi %r0,0 60 1: stmg %r0,%r1,0(%r2) 61 BR_EX %r14 62 SYM_FUNC_END(__lshrti3) 63 EXPORT_SYMBOL(__lshrti3)
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.