summaryrefslogtreecommitdiff
path: root/x86.h
diff options
context:
space:
mode:
authorrsc <rsc>2006-09-06 17:04:06 +0000
committerrsc <rsc>2006-09-06 17:04:06 +0000
commita650c606fecc7e3938345e2bc52050a9ea725e7a (patch)
tree3bd2cfcd215f7ad4abdb087cdfe91f608c7f0801 /x86.h
parent45854caa93eecc3f80d34940b7cf6a400b640d69 (diff)
downloadxv6-labs-a650c606fecc7e3938345e2bc52050a9ea725e7a.tar.gz
xv6-labs-a650c606fecc7e3938345e2bc52050a9ea725e7a.tar.bz2
xv6-labs-a650c606fecc7e3938345e2bc52050a9ea725e7a.zip
spacing fixes: no tabs, 2-space indents (for rtm)
Diffstat (limited to 'x86.h')
-rw-r--r--x86.h142
1 files changed, 71 insertions, 71 deletions
diff --git a/x86.h b/x86.h
index f9e2261..dda310c 100644
--- a/x86.h
+++ b/x86.h
@@ -1,39 +1,39 @@
static __inline uchar
inb(int port)
{
- uchar data;
- __asm __volatile("inb %w1,%0" : "=a" (data) : "d" (port));
- return data;
+ uchar data;
+ __asm __volatile("inb %w1,%0" : "=a" (data) : "d" (port));
+ return data;
}
static __inline void
insl(int port, void *addr, int cnt)
{
- __asm __volatile("cld\n\trepne\n\tinsl" :
- "=D" (addr), "=c" (cnt) :
- "d" (port), "0" (addr), "1" (cnt) :
- "memory", "cc");
+ __asm __volatile("cld\n\trepne\n\tinsl" :
+ "=D" (addr), "=c" (cnt) :
+ "d" (port), "0" (addr), "1" (cnt) :
+ "memory", "cc");
}
static __inline void
outb(int port, uchar data)
{
- __asm __volatile("outb %0,%w1" : : "a" (data), "d" (port));
+ __asm __volatile("outb %0,%w1" : : "a" (data), "d" (port));
}
static __inline void
outw(int port, ushort data)
{
- __asm __volatile("outw %0,%w1" : : "a" (data), "d" (port));
+ __asm __volatile("outw %0,%w1" : : "a" (data), "d" (port));
}
static __inline void
outsl(int port, const void *addr, int cnt)
{
- __asm __volatile("cld\n\trepne\n\toutsl" :
- "=S" (addr), "=c" (cnt) :
- "d" (port), "0" (addr), "1" (cnt) :
- "cc");
+ __asm __volatile("cld\n\trepne\n\toutsl" :
+ "=S" (addr), "=c" (cnt) :
+ "d" (port), "0" (addr), "1" (cnt) :
+ "cc");
}
struct segdesc;
@@ -41,13 +41,13 @@ struct segdesc;
static __inline void
lgdt(struct segdesc *p, int size)
{
- volatile ushort pd[3];
+ volatile ushort pd[3];
- pd[0] = size-1;
- pd[1] = (uint)p;
- pd[2] = (uint)p >> 16;
+ pd[0] = size-1;
+ pd[1] = (uint)p;
+ pd[2] = (uint)p >> 16;
- asm volatile("lgdt (%0)" : : "g" (pd));
+ asm volatile("lgdt (%0)" : : "g" (pd));
}
struct gatedesc;
@@ -55,99 +55,99 @@ struct gatedesc;
static __inline void
lidt(struct gatedesc *p, int size)
{
- volatile ushort pd[3];
+ volatile ushort pd[3];
- pd[0] = size-1;
- pd[1] = (uint)p;
- pd[2] = (uint)p >> 16;
+ pd[0] = size-1;
+ pd[1] = (uint)p;
+ pd[2] = (uint)p >> 16;
- asm volatile("lidt (%0)" : : "g" (pd));
+ asm volatile("lidt (%0)" : : "g" (pd));
}
static __inline void
ltr(ushort sel)
{
- __asm __volatile("ltr %0" : : "r" (sel));
+ __asm __volatile("ltr %0" : : "r" (sel));
}
static __inline uint
read_eflags(void)
{
- uint eflags;
- __asm __volatile("pushfl; popl %0" : "=r" (eflags));
- return eflags;
+ uint eflags;
+ __asm __volatile("pushfl; popl %0" : "=r" (eflags));
+ return eflags;
}
static __inline void
write_eflags(uint eflags)
{
- __asm __volatile("pushl %0; popfl" : : "r" (eflags));
+ __asm __volatile("pushl %0; popfl" : : "r" (eflags));
}
static __inline void
cpuid(uint info, uint *eaxp, uint *ebxp, uint *ecxp, uint *edxp)
{
- uint eax, ebx, ecx, edx;
- asm volatile("cpuid"
- : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
- : "a" (info));
- if (eaxp)
- *eaxp = eax;
- if (ebxp)
- *ebxp = ebx;
- if (ecxp)
- *ecxp = ecx;
- if (edxp)
- *edxp = edx;
+ uint eax, ebx, ecx, edx;
+ asm volatile("cpuid" :
+ "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) :
+ "a" (info));
+ if (eaxp)
+ *eaxp = eax;
+ if (ebxp)
+ *ebxp = ebx;
+ if (ecxp)
+ *ecxp = ecx;
+ if (edxp)
+ *edxp = edx;
}
static __inline uint
cmpxchg(uint oldval, uint newval, volatile uint* lock_addr)
{
uint result;
- __asm__ __volatile__(
- "lock; cmpxchgl %2, %0"
- :"+m" (*lock_addr), "=a" (result) : "r"(newval), "1"(oldval) : "cc"
- );
+ __asm__ __volatile__("lock; cmpxchgl %2, %0" :
+ "+m" (*lock_addr), "=a" (result) :
+ "r"(newval), "1"(oldval) :
+ "cc");
return result;
}
static __inline void
cli(void)
{
- __asm__ volatile("cli");
+ __asm__ volatile("cli");
}
static __inline void
sti(void)
{
- __asm__ volatile("sti");
+ __asm__ volatile("sti");
}
struct trapframe {
- /* registers as pushed by pusha */
- uint edi;
- uint esi;
- uint ebp;
- uint oesp; /* Useless */
- uint ebx;
- uint edx;
- uint ecx;
- uint eax;
- /* rest of trap frame */
- ushort es;
- ushort padding1;
- ushort ds;
- ushort padding2;
- uint trapno;
- /* below here defined by x86 hardware */
- uint err;
- uint eip;
- ushort cs;
- ushort padding3;
- uint eflags;
- /* below here only when crossing rings, such as from user to kernel */
- uint esp;
- ushort ss;
- ushort padding4;
+ /* registers as pushed by pusha */
+ uint edi;
+ uint esi;
+ uint ebp;
+ uint oesp; /* Useless */
+ uint ebx;
+ uint edx;
+ uint ecx;
+ uint eax;
+ /* rest of trap frame */
+ ushort es;
+ ushort padding1;
+ ushort ds;
+ ushort padding2;
+ uint trapno;
+ /* below here defined by x86 hardware */
+ uint err;
+ uint eip;
+ ushort cs;
+ ushort padding3;
+ uint eflags;
+ /* below here only when crossing rings, such as from user to kernel */
+ uint esp;
+ ushort ss;
+ ushort padding4;
};