Commit 45458aa4 authored by John David Anglin's avatar John David Anglin Committed by Helge Deller
Browse files

parisc: Define depi_safe macro



The depi instruction is similar to the extru instruction on 64-bit machines.
It leaves the most-significant 32 bits of the target register in an undefined
state.  On 64-bit machines, the macro uses depdi to perform safe deposits in
the least-significant 32 bits.

Signed-off-by: default avatarJohn David Anglin <dave.anglin@bell.net>
Signed-off-by: default avatarHelge Deller <deller@gmx.de>
parent 3cbadd20
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -158,6 +158,16 @@
#endif
	.endm

	/* The depi instruction leaves the most significant 32 bits of the
	 * target register in an undefined state on PA 2.0 systems. */
	.macro depi_safe i, p, len, t
#ifdef CONFIG_64BIT
	depdi	\i, 32+(\p), \len, \t
#else
	depi	\i, \p, \len, \t
#endif
	.endm

	/* load 32-bit 'value' into 'reg' compensating for the ldil
	 * sign-extension when running in wide mode.
	 * WARNING!! neither 'value' nor 'reg' can be expressions