summaryrefslogtreecommitdiff
path: root/x86.h
diff options
context:
space:
mode:
authorrtm <rtm>2006-07-20 09:07:53 +0000
committerrtm <rtm>2006-07-20 09:07:53 +0000
commit29270816285978e44b317c6e5c7bfa7a89ec24dd (patch)
treefae6e6346ca73f7d2721c059a9f1fce166c045c7 /x86.h
parentbd228a81566befa6154807d327d8c873f6a76c79 (diff)
downloadxv6-labs-29270816285978e44b317c6e5c7bfa7a89ec24dd.tar.gz
xv6-labs-29270816285978e44b317c6e5c7bfa7a89ec24dd.tar.bz2
xv6-labs-29270816285978e44b317c6e5c7bfa7a89ec24dd.zip
uint32_t -> uint &c
Diffstat (limited to 'x86.h')
-rw-r--r--x86.h177
1 files changed, 84 insertions, 93 deletions
diff --git a/x86.h b/x86.h
index 444c6df..41a6e9a 100644
--- a/x86.h
+++ b/x86.h
@@ -1,37 +1,36 @@
static __inline void breakpoint(void) __attribute__((always_inline));
-static __inline uint8_t inb(int port) __attribute__((always_inline));
+static __inline uchar inb(int port) __attribute__((always_inline));
static __inline void insb(int port, void *addr, int cnt) __attribute__((always_inline));
-static __inline uint16_t inw(int port) __attribute__((always_inline));
+static __inline ushort inw(int port) __attribute__((always_inline));
static __inline void insw(int port, void *addr, int cnt) __attribute__((always_inline));
-static __inline uint32_t inl(int port) __attribute__((always_inline));
+static __inline uint inl(int port) __attribute__((always_inline));
static __inline void insl(int port, void *addr, int cnt) __attribute__((always_inline));
-static __inline void outb(int port, uint8_t data) __attribute__((always_inline));
+static __inline void outb(int port, uchar data) __attribute__((always_inline));
static __inline void outsb(int port, const void *addr, int cnt) __attribute__((always_inline));
-static __inline void outw(int port, uint16_t data) __attribute__((always_inline));
+static __inline void outw(int port, ushort data) __attribute__((always_inline));
static __inline void outsw(int port, const void *addr, int cnt) __attribute__((always_inline));
static __inline void outsl(int port, const void *addr, int cnt) __attribute__((always_inline));
-static __inline void outl(int port, uint32_t data) __attribute__((always_inline));
+static __inline void outl(int port, uint data) __attribute__((always_inline));
static __inline void invlpg(void *addr) __attribute__((always_inline));
struct segdesc;
static __inline void lgdt(struct segdesc *p, int) __attribute__((always_inline));
struct gatedesc;
static __inline void lidt(struct gatedesc *p, int) __attribute__((always_inline));
-static __inline void lldt(uint16_t sel) __attribute__((always_inline));
-static __inline void ltr(uint16_t sel) __attribute__((always_inline));
-static __inline void lcr0(uint32_t val) __attribute__((always_inline));
-static __inline uint32_t rcr0(void) __attribute__((always_inline));
-static __inline uint32_t rcr2(void) __attribute__((always_inline));
-static __inline void lcr3(uint32_t val) __attribute__((always_inline));
-static __inline uint32_t rcr3(void) __attribute__((always_inline));
-static __inline void lcr4(uint32_t val) __attribute__((always_inline));
-static __inline uint32_t rcr4(void) __attribute__((always_inline));
+static __inline void lldt(ushort sel) __attribute__((always_inline));
+static __inline void ltr(ushort sel) __attribute__((always_inline));
+static __inline void lcr0(uint val) __attribute__((always_inline));
+static __inline uint rcr0(void) __attribute__((always_inline));
+static __inline uint rcr2(void) __attribute__((always_inline));
+static __inline void lcr3(uint val) __attribute__((always_inline));
+static __inline uint rcr3(void) __attribute__((always_inline));
+static __inline void lcr4(uint val) __attribute__((always_inline));
+static __inline uint rcr4(void) __attribute__((always_inline));
static __inline void tlbflush(void) __attribute__((always_inline));
-static __inline uint32_t read_eflags(void) __attribute__((always_inline));
-static __inline void write_eflags(uint32_t eflags) __attribute__((always_inline));
-static __inline uint32_t read_ebp(void) __attribute__((always_inline));
-static __inline uint32_t read_esp(void) __attribute__((always_inline));
-static __inline void cpuid(uint32_t info, uint32_t *eaxp, uint32_t *ebxp, uint32_t *ecxp, uint32_t *edxp);
-static __inline uint64_t read_tsc(void) __attribute__((always_inline));
+static __inline uint read_eflags(void) __attribute__((always_inline));
+static __inline void write_eflags(uint eflags) __attribute__((always_inline));
+static __inline uint read_ebp(void) __attribute__((always_inline));
+static __inline uint read_esp(void) __attribute__((always_inline));
+static __inline void cpuid(uint info, uint *eaxp, uint *ebxp, uint *ecxp, uint *edxp);
static __inline void cli(void) __attribute__((always_inline));
static __inline void sti(void) __attribute__((always_inline));
@@ -41,10 +40,10 @@ breakpoint(void)
__asm __volatile("int3");
}
-static __inline uint8_t
+static __inline uchar
inb(int port)
{
- uint8_t data;
+ uchar data;
__asm __volatile("inb %w1,%0" : "=a" (data) : "d" (port));
return data;
}
@@ -58,10 +57,10 @@ insb(int port, void *addr, int cnt)
"memory", "cc");
}
-static __inline uint16_t
+static __inline ushort
inw(int port)
{
- uint16_t data;
+ ushort data;
__asm __volatile("inw %w1,%0" : "=a" (data) : "d" (port));
return data;
}
@@ -75,10 +74,10 @@ insw(int port, void *addr, int cnt)
"memory", "cc");
}
-static __inline uint32_t
+static __inline uint
inl(int port)
{
- uint32_t data;
+ uint data;
__asm __volatile("inl %w1,%0" : "=a" (data) : "d" (port));
return data;
}
@@ -93,7 +92,7 @@ insl(int port, void *addr, int cnt)
}
static __inline void
-outb(int port, uint8_t data)
+outb(int port, uchar data)
{
__asm __volatile("outb %0,%w1" : : "a" (data), "d" (port));
}
@@ -108,7 +107,7 @@ outsb(int port, const void *addr, int cnt)
}
static __inline void
-outw(int port, uint16_t data)
+outw(int port, ushort data)
{
__asm __volatile("outw %0,%w1" : : "a" (data), "d" (port));
}
@@ -132,7 +131,7 @@ outsl(int port, const void *addr, int cnt)
}
static __inline void
-outl(int port, uint32_t data)
+outl(int port, uint data)
{
__asm __volatile("outl %0,%w1" : : "a" (data), "d" (port));
}
@@ -146,7 +145,7 @@ invlpg(void *addr)
static __inline void
lgdt(struct segdesc *p, int size)
{
- volatile uint16_t pd[3];
+ volatile ushort pd[3];
pd[0] = size-1;
pd[1] = (uint)p;
@@ -158,7 +157,7 @@ lgdt(struct segdesc *p, int size)
static __inline void
lidt(struct gatedesc *p, int size)
{
- volatile uint16_t pd[3];
+ volatile ushort pd[3];
pd[0] = size-1;
pd[1] = (uint)p;
@@ -168,63 +167,63 @@ lidt(struct gatedesc *p, int size)
}
static __inline void
-lldt(uint16_t sel)
+lldt(ushort sel)
{
__asm __volatile("lldt %0" : : "r" (sel));
}
static __inline void
-ltr(uint16_t sel)
+ltr(ushort sel)
{
__asm __volatile("ltr %0" : : "r" (sel));
}
static __inline void
-lcr0(uint32_t val)
+lcr0(uint val)
{
__asm __volatile("movl %0,%%cr0" : : "r" (val));
}
-static __inline uint32_t
+static __inline uint
rcr0(void)
{
- uint32_t val;
+ uint val;
__asm __volatile("movl %%cr0,%0" : "=r" (val));
return val;
}
-static __inline uint32_t
+static __inline uint
rcr2(void)
{
- uint32_t val;
+ uint val;
__asm __volatile("movl %%cr2,%0" : "=r" (val));
return val;
}
static __inline void
-lcr3(uint32_t val)
+lcr3(uint val)
{
__asm __volatile("movl %0,%%cr3" : : "r" (val));
}
-static __inline uint32_t
+static __inline uint
rcr3(void)
{
- uint32_t val;
+ uint val;
__asm __volatile("movl %%cr3,%0" : "=r" (val));
return val;
}
static __inline void
-lcr4(uint32_t val)
+lcr4(uint val)
{
__asm __volatile("movl %0,%%cr4" : : "r" (val));
}
-static __inline uint32_t
+static __inline uint
rcr4(void)
{
- uint32_t cr4;
+ uint cr4;
__asm __volatile("movl %%cr4,%0" : "=r" (cr4));
return cr4;
}
@@ -232,69 +231,69 @@ rcr4(void)
static __inline void
tlbflush(void)
{
- uint32_t cr3;
+ uint cr3;
__asm __volatile("movl %%cr3,%0" : "=r" (cr3));
__asm __volatile("movl %0,%%cr3" : : "r" (cr3));
}
-static __inline uint32_t
+static __inline uint
read_eflags(void)
{
- uint32_t eflags;
+ uint eflags;
__asm __volatile("pushfl; popl %0" : "=r" (eflags));
return eflags;
}
static __inline void
-write_eflags(uint32_t eflags)
+write_eflags(uint eflags)
{
__asm __volatile("pushl %0; popfl" : : "r" (eflags));
}
-static __inline uint32_t
+static __inline uint
read_ebp(void)
{
- uint32_t ebp;
+ uint ebp;
__asm __volatile("movl %%ebp,%0" : "=r" (ebp));
return ebp;
}
-static __inline uint32_t
+static __inline uint
read_esp(void)
{
- uint32_t esp;
+ uint esp;
__asm __volatile("movl %%esp,%0" : "=r" (esp));
return esp;
}
-static __inline uint32_t
+static __inline uint
read_esi(void)
{
- uint32_t esi;
+ uint esi;
__asm __volatile("movl %%esi,%0" : "=r" (esi));
return esi;
}
-static __inline uint32_t
+static __inline uint
read_edi(void)
{
- uint32_t edi;
+ uint edi;
__asm __volatile("movl %%edi,%0" : "=r" (edi));
return edi;
}
-static __inline uint32_t
+static __inline uint
read_ebx(void)
{
- uint32_t ebx;
+ uint ebx;
__asm __volatile("movl %%ebx,%0" : "=r" (ebx));
return ebx;
}
static __inline void
-cpuid(uint32_t info, uint32_t *eaxp, uint32_t *ebxp, uint32_t *ecxp, uint32_t *edxp)
+cpuid(uint info, uint *eaxp, uint *ebxp, uint *ecxp, uint *edxp)
{
- uint32_t eax, ebx, ecx, edx;
+ uint eax, ebx, ecx, edx;
asm volatile("cpuid"
: "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
: "a" (info));
@@ -308,10 +307,10 @@ cpuid(uint32_t info, uint32_t *eaxp, uint32_t *ebxp, uint32_t *ecxp, uint32_t *e
*edxp = edx;
}
-static __inline uint32_t
-cmpxchg(uint32_t oldval, uint32_t newval, volatile uint32_t* lock_addr)
+static __inline uint
+cmpxchg(uint oldval, uint newval, volatile uint* lock_addr)
{
- uint32_t result;
+ uint result;
__asm__ __volatile__(
"lock; cmpxchgl %2, %0"
:"+m" (*lock_addr), "=a" (result) : "r"(newval), "1"(oldval) : "cc"
@@ -319,14 +318,6 @@ cmpxchg(uint32_t oldval, uint32_t newval, volatile uint32_t* lock_addr)
return result;
}
-static __inline uint64_t
-read_tsc(void)
-{
- uint64_t tsc;
- __asm __volatile("rdtsc" : "=A" (tsc));
- return tsc;
-}
-
static __inline void
cli(void)
{
@@ -341,30 +332,30 @@ sti(void)
struct trapframe {
/* registers as pushed by pusha */
- uint32_t edi;
- uint32_t esi;
- uint32_t ebp;
- uint32_t oesp; /* Useless */
- uint32_t ebx;
- uint32_t edx;
- uint32_t ecx;
- uint32_t eax;
+ uint edi;
+ uint esi;
+ uint ebp;
+ uint oesp; /* Useless */
+ uint ebx;
+ uint edx;
+ uint ecx;
+ uint eax;
/* rest of trap frame */
- uint16_t es;
- uint16_t padding1;
- uint16_t ds;
- uint16_t padding2;
- uint32_t trapno;
+ ushort es;
+ ushort padding1;
+ ushort ds;
+ ushort padding2;
+ uint trapno;
/* below here defined by x86 hardware */
- uint32_t err;
- uintptr_t eip;
- uint16_t cs;
- uint16_t padding3;
- uint32_t eflags;
+ uint err;
+ uint eip;
+ ushort cs;
+ ushort padding3;
+ uint eflags;
/* below here only when crossing rings, such as from user to kernel */
- uintptr_t esp;
- uint16_t ss;
- uint16_t padding4;
+ uint esp;
+ ushort ss;
+ ushort padding4;
};
#define MAX_IRQS 16 // Number of IRQs