On 18.10.2018 22:01, John David Anglin wrote: > On 2018-10-18 3:20 PM, Helge Deller wrote: >> According to the PARISC 1.1 Instruction Set Reference Manual, PA1.1 does >> *not* support the depw,z instruction, but only the dep (depw) >> instruction, e.g.: > No. This is a mnemonics issue. PA 1.1 has zdep instruction that is the same as PA 2.0 depw,z. > The have same instruction encoding. Ok. >> d5 8b 08 f6 depw,z r11,24,10,r12 # NOT PA1.1 >> d5 8b 0c f6 depw r11,24,10,r12 # OK for PA1.1 >> >> And in the Linux kernel source (arch/parisc/include/asm/assembly.h) I see >> >> /* Shift Left - note the r and t can NOT be the same! */ >> .macro shl r, sa, t >> dep,z \r, 31-(\sa), 32-(\sa), \t > Should be zdep. Ok. What about the note "r and t can NOT be the same!" ? Is that bogus or true for the dep case at least? If it's bogus we could replace in entry.S: --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S @@ -426,8 +426,7 @@ ldw,s \index(\pmd),\pmd bb,>=,n \pmd,_PxD_PRESENT_BIT,\fault dep %r0,31,PxD_FLAG_SHIFT,\pmd /* clear flags */ - copy \pmd,%r9 - SHLREG %r9,PxD_VALUE_SHIFT,\pmd + SHLREG \pmd,PxD_VALUE_SHIFT,\pmd Thanks for the explanation, Helge