diff options
Diffstat (limited to 'arch/m68k/kernel/traps.c')
| -rw-r--r-- | arch/m68k/kernel/traps.c | 36 | 
1 files changed, 17 insertions, 19 deletions
diff --git a/arch/m68k/kernel/traps.c b/arch/m68k/kernel/traps.c index a76452ca964..daaa9187654 100644 --- a/arch/m68k/kernel/traps.c +++ b/arch/m68k/kernel/traps.c @@ -552,13 +552,13 @@ static inline void bus_error030 (struct frame *fp)  #ifdef DEBUG  		asm volatile ("ptestr %3,%2@,#7,%0\n\t" -			      "pmove %%psr,%1@" -			      : "=a&" (desc) -			      : "a" (&temp), "a" (addr), "d" (ssw)); +			      "pmove %%psr,%1" +			      : "=a&" (desc), "=m" (temp) +			      : "a" (addr), "d" (ssw));  #else  		asm volatile ("ptestr %2,%1@,#7\n\t" -			      "pmove %%psr,%0@" -			      : : "a" (&temp), "a" (addr), "d" (ssw)); +			      "pmove %%psr,%0" +			      : "=m" (temp) : "a" (addr), "d" (ssw));  #endif  		mmusr = temp; @@ -605,20 +605,18 @@ static inline void bus_error030 (struct frame *fp)  			       !(ssw & RW) ? "write" : "read", addr,  			       fp->ptregs.pc, ssw);  			asm volatile ("ptestr #1,%1@,#0\n\t" -				      "pmove %%psr,%0@" -				      : /* no outputs */ -				      : "a" (&temp), "a" (addr)); +				      "pmove %%psr,%0" +				      : "=m" (temp) +				      : "a" (addr));  			mmusr = temp;  			printk ("level 0 mmusr is %#x\n", mmusr);  #if 0 -			asm volatile ("pmove %%tt0,%0@" -				      : /* no outputs */ -				      : "a" (&tlong)); +			asm volatile ("pmove %%tt0,%0" +				      : "=m" (tlong));  			printk("tt0 is %#lx, ", tlong); -			asm volatile ("pmove %%tt1,%0@" -				      : /* no outputs */ -				      : "a" (&tlong)); +			asm volatile ("pmove %%tt1,%0" +				      : "=m" (tlong));  			printk("tt1 is %#lx\n", tlong);  #endif  #ifdef DEBUG @@ -668,13 +666,13 @@ static inline void bus_error030 (struct frame *fp)  #ifdef DEBUG  	asm volatile ("ptestr #1,%2@,#7,%0\n\t" -		      "pmove %%psr,%1@" -		      : "=a&" (desc) -		      : "a" (&temp), "a" (addr)); +		      "pmove %%psr,%1" +		      : "=a&" (desc), "=m" (temp) +		      : "a" (addr));  #else  	asm volatile ("ptestr #1,%1@,#7\n\t" -		      "pmove %%psr,%0@" -		      : : "a" (&temp), "a" (addr)); +		      "pmove %%psr,%0" +		      : "=m" (temp) : "a" (addr));  #endif  	mmusr = temp;  |