diff options
author | markm <markm@FreeBSD.org> | 2002-09-21 18:26:53 +0000 |
---|---|---|
committer | markm <markm@FreeBSD.org> | 2002-09-21 18:26:53 +0000 |
commit | fed5dfb2396b45ba622b331af0a54cd7b8bcd7d2 (patch) | |
tree | 779b01a54a7ac7f280ddc434f80569aa6f224bb0 /sys/amd64/include/cpufunc.h | |
parent | e51e2b450aae53eb1ef89370d6e0031b01ceb544 (diff) | |
download | FreeBSD-src-fed5dfb2396b45ba622b331af0a54cd7b8bcd7d2.zip FreeBSD-src-fed5dfb2396b45ba622b331af0a54cd7b8bcd7d2.tar.gz |
Provide in inline function for the (GNUC) assembler "hlt" instruction.
Diffstat (limited to 'sys/amd64/include/cpufunc.h')
-rw-r--r-- | sys/amd64/include/cpufunc.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/amd64/include/cpufunc.h b/sys/amd64/include/cpufunc.h index b074c64..1c4806f 100644 --- a/sys/amd64/include/cpufunc.h +++ b/sys/amd64/include/cpufunc.h @@ -124,6 +124,12 @@ fls(int mask) return (mask == 0 ? mask : (int)bsrl((u_int)mask) + 1); } +static __inline void +halt(void) +{ + __asm __volatile("hlt"); +} + #if __GNUC__ < 2 #define inb(port) inbv(port) @@ -600,6 +606,7 @@ void cpu_invlpg_range(u_int start, u_int end); void disable_intr(void); void do_cpuid(u_int ax, u_int *p); void enable_intr(void); +void halt(void); u_char inb(u_int port); u_int inl(u_int port); void insb(u_int port, void *addr, size_t cnt); |