On 1/25/21 10:17 PM, John David Anglin wrote: > On 2021-01-25 4:13 p.m., Helge Deller wrote: >> On 1/25/21 10:08 PM, John David Anglin wrote: >>> I would suggest the following for this hunk: >>> >>> + ldil L%intr_restore, %r2 >>> + BL preempt_schedule_irq >>> + ldo R%intr_restore(%r2), %r2 >>> >>> ldil L%intr_restore, %r1 >>> b,l preempt_schedule_irq,%r2 >>> ldo R%intr_restore(%r1), %r2 >>> >>> On PA 2.0 hardware that gives a 22-bit call. >> "BL" is already using "b,l", see #define in arch/parisc/include/asm/assembly.h >> >> The 22-bit weren't sufficient, that's why I changed it too. > Okay but "b,l" only provides a 22-bit branch with %r2 as link register. Argh. Yes. Didn't know. We have BL,%r25 in the same file. > You also need to use %r1 in the ldil and ldo instructions. Ok, will fix. Helge