First import
[xorg_rtime.git] / xorg-server-1.4 / hw / xfree86 / os-support / solaris / solaris-ia32.S
blobe2d9cf60a880f4077632b75e6dcbc6b41addf4be
1 / Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
2
3 / Permission is hereby granted, free of charge, to any person obtaining a
4 / copy of this software and associated documentation files (the
5 / "Software"), to deal in the Software without restriction, including
6 / without limitation the rights to use, copy, modify, merge, publish,
7 / distribute, and/or sell copies of the Software, and to permit persons
8 / to whom the Software is furnished to do so, provided that the above
9 / copyright notice(s) and this permission notice appear in all copies of
10 / the Software and that both the above copyright notice(s) and this
11 / permission notice appear in supporting documentation.
12
13 / THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
14 / OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
15 / MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
16 / OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
17 / HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
18 / INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
19 / FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
20 / NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
21 / WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
22
23 / Except as contained in this notice, the name of a copyright holder
24 / shall not be used in advertising or otherwise to promote the sale, use
25 / or other dealings in this Software without prior written authorization
26 / of the copyright holder.
28 #ifdef INLINE_ASM
29 #define FUNCTION_START(f,n)     .inline f,n
30 #define FUNCTION_END(f)         .end
31 #else
32 #define _ASM
33 #include <sys/asm_linkage.h>
34 #define FUNCTION_START(f,n)     ENTRY(f)
35 #define FUNCTION_END(f)         SET_SIZE(f)
36 #endif
38         FUNCTION_START(inb,4)
39         movl    (%esp), %edx
40         xorl    %eax, %eax
41         inb     (%dx)
42         FUNCTION_END(inb)
44         FUNCTION_START(inw,4)
45         movl    (%esp), %edx
46         xorl    %eax, %eax
47         inw     (%dx)
48         FUNCTION_END(inw)
50         FUNCTION_START(inl,4)
51         movl    (%esp), %edx
52         xorl    %eax, %eax
53         inl     (%dx)
54         FUNCTION_END(inl)
56         FUNCTION_START(outb,8)
57         movl    (%esp), %edx
58         movl    4(%esp), %eax
59         outb    (%dx)
60         FUNCTION_END(outb)
62         FUNCTION_START(outw,8)
63         movl    (%esp), %edx
64         movl    4(%esp), %eax
65         outw    (%dx)
66         FUNCTION_END(outw)
68         FUNCTION_START(outl,8)
69         movl    (%esp), %edx
70         movl    4(%esp), %eax
71         outl    (%dx)
72         FUNCTION_END(outl)