diff options
author | Kaleb Keithley <kaleb@freedesktop.org> | 2004-02-23 20:35:19 +0000 |
---|---|---|
committer | Kaleb Keithley <kaleb@freedesktop.org> | 2004-02-23 20:35:19 +0000 |
commit | dcdd47ebbd4e9b5f4cbb598a5217004df0e80844 (patch) | |
tree | b71cc329c346f3575e942194da08e8492ab456b3 /hw/xfree86 | |
parent | a27ffd2678ef76453c4fa27932462425d804df6d (diff) |
Initial revision
Diffstat (limited to 'hw/xfree86')
-rw-r--r-- | hw/xfree86/os-support/misc/PortIO.S | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/hw/xfree86/os-support/misc/PortIO.S b/hw/xfree86/os-support/misc/PortIO.S new file mode 100644 index 000000000..61aac6b89 --- /dev/null +++ b/hw/xfree86/os-support/misc/PortIO.S @@ -0,0 +1,57 @@ +/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/misc/PortIO.S,v 1.1 2004/02/02 03:55:32 dawes Exp $ */ + +/* Port I/O functions for platforms with no inlining. */ + +#include "assyntax.h" + + FILE("PortIO.s") + + AS_BEGIN + + GLOBL GLNAME(outb) + GLOBL GLNAME(outw) + GLOBL GLNAME(outl) + GLOBL GLNAME(inb) + GLOBL GLNAME(inw) + GLOBL GLNAME(inl) + + SEG_TEXT + ALIGNTEXT4 +GLNAME(outb): + MOV_L (REGOFF(4,ESP), EDX) + MOV_L (REGOFF(8,ESP), EAX) + OUT_B + RET + + ALIGNTEXT4 +GLNAME(outw): + MOV_L (REGOFF(4,ESP), EDX) + MOV_L (REGOFF(8,ESP), EAX) + OUT_W + RET + + ALIGNTEXT4 +GLNAME(outl): + MOV_L (REGOFF(4,ESP), EDX) + MOV_L (REGOFF(8,ESP), EAX) + OUT_L + RET + + ALIGNTEXT4 +GLNAME(inb): + MOV_L (REGOFF(4,ESP), EDX) + IN_B + RET + + ALIGNTEXT4 +GLNAME(inw): + MOV_L (REGOFF(4,ESP), EDX) + IN_L + RET + + ALIGNTEXT4 +GLNAME(inl): + MOV_L (REGOFF(4,ESP), EDX) + IN_L + RET + |