Fix another 16 bit operation on a 32 bit quantity.
authorrahnds <rahnds@openbsd.org>
Mon, 27 Jan 1997 03:40:09 +0000 (03:40 +0000)
committerrahnds <rahnds@openbsd.org>
Mon, 27 Jan 1997 03:40:09 +0000 (03:40 +0000)
don't do and of 16 bit quantity on a 32 bit register.
Also gets rid of the assembler warning/error.

sys/arch/powerpc/powerpc/ofwreal.S

index a097aac..9f8a81d 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ofwreal.S,v 1.2 1996/12/28 06:22:10 rahnds Exp $      */
+/*     $OpenBSD: ofwreal.S,v 1.3 1997/01/27 03:40:09 rahnds Exp $      */
 /*     $NetBSD: ofwreal.S,v 1.1 1996/09/30 16:34:51 ws Exp $   */
 
 /*
@@ -113,7 +113,9 @@ fwentry:
        stw     3,8(1)                  /* save return value */
 
        mfmsr   4
-       andi.   4,4,~(PSL_IR|PSL_DR)    /* turn off MMU */
+       lis     3,(PSL_IR|PSL_DR)@h     /* turn off MMU */
+       ori     3,3,(PSL_IR|PSL_DR)@l   /* turn off MMU */
+       andc    4,4,3                   /* turn off MMU */
        mtmsr   4
        isync