search for: vmi_bool

Displaying 6 results from an estimated 6 matches for "vmi_bool".

2007 Apr 18
4
[RFC, PATCH 1/24] i386 Vmi documentation
...ve to the host's wallclock time. + + Inputs: None + Outputs: EAX = low word, wallclock time in nanoseconds + EDX = high word, wallclock time in nanoseconds + Clobbers: Standard + Segments: Standard + + VMI_WallclockUpdated + + VMI_BOOL VMICALL VMI_WallclockUpdated(void); + + VMI_WallclockUpdated returns TRUE if the wallclock time has changed + relative to the real cycle counter since the previous time that + VMI_WallclockUpdated was polled. For example, while a VM is suspended, + the real cycle co...
2007 Apr 18
4
[RFC, PATCH 1/24] i386 Vmi documentation
...ve to the host's wallclock time. + + Inputs: None + Outputs: EAX = low word, wallclock time in nanoseconds + EDX = high word, wallclock time in nanoseconds + Clobbers: Standard + Segments: Standard + + VMI_WallclockUpdated + + VMI_BOOL VMICALL VMI_WallclockUpdated(void); + + VMI_WallclockUpdated returns TRUE if the wallclock time has changed + relative to the real cycle counter since the previous time that + VMI_WallclockUpdated was polled. For example, while a VM is suspended, + the real cycle co...
2007 Apr 18
0
[RFC, PATCH 23/24] i386 Vmi timer patch
...return ret; +} + +static inline VMI_UINT64 vmi_get_wallclock(void) +{ + VMI_UINT64 ret; + vmi_wrap_call( + GetWallclockTime, "xor %%eax, %%eax;" + "xor %%edx, %%edx;", + VMI_OREG64 (ret), + 0, VMI_NO_INPUT, + VMI_CLOBBER(TWO_RETURNS)); + return ret; +} + +static inline VMI_BOOL vmi_wallclock_updated(void) +{ + VMI_BOOL ret; + vmi_wrap_call( + WallclockUpdated, "xor %%eax, %%eax;", + VMI_OREG1 (ret), + 0, VMI_NO_INPUT, + VMI_CLOBBER(ONE_RETURN)); + return ret; +} + +static inline void vmi_set_alarm(VMI_UINT32 flags, VMI_CYCLES expiry, VMI_CYCLES period) +{ +...
2007 Apr 18
0
[RFC, PATCH 23/24] i386 Vmi timer patch
...return ret; +} + +static inline VMI_UINT64 vmi_get_wallclock(void) +{ + VMI_UINT64 ret; + vmi_wrap_call( + GetWallclockTime, "xor %%eax, %%eax;" + "xor %%edx, %%edx;", + VMI_OREG64 (ret), + 0, VMI_NO_INPUT, + VMI_CLOBBER(TWO_RETURNS)); + return ret; +} + +static inline VMI_BOOL vmi_wallclock_updated(void) +{ + VMI_BOOL ret; + vmi_wrap_call( + WallclockUpdated, "xor %%eax, %%eax;", + VMI_OREG1 (ret), + 0, VMI_NO_INPUT, + VMI_CLOBBER(ONE_RETURN)); + return ret; +} + +static inline void vmi_set_alarm(VMI_UINT32 flags, VMI_CYCLES expiry, VMI_CYCLES period) +{ +...
2007 Apr 18
4
[RFC, PATCH 4/24] i386 Vmi inline implementation
...ct; +struct Xgt_desc_struct; +typedef struct tss_struct VMI_TASK; +typedef struct Xgt_desc_struct VMI_DTR; +typedef uint64_t VMI_UINT64; +typedef uint32_t VMI_UINT32; +typedef uint16_t VMI_UINT16; +typedef uint16_t VMI_SELECTOR; +typedef uint8_t VMI_UINT8; +typedef int8_t VMI_INT8; +typedef uint8_t VMI_BOOL; +typedef uint64_t VMI_CYCLES; + +#include <paravirtualInterface.h> +#include <mach_asm.h> + +#if defined(CONFIG_VMI_C_CONVENTION) +#define VMI_CLOBBER_ZERO_RETURNS "cc", "eax", "edx", "ecx" +#define VMI_CLOBBER_ONE_RETURN "cc", "e...
2007 Apr 18
4
[RFC, PATCH 4/24] i386 Vmi inline implementation
...ct; +struct Xgt_desc_struct; +typedef struct tss_struct VMI_TASK; +typedef struct Xgt_desc_struct VMI_DTR; +typedef uint64_t VMI_UINT64; +typedef uint32_t VMI_UINT32; +typedef uint16_t VMI_UINT16; +typedef uint16_t VMI_SELECTOR; +typedef uint8_t VMI_UINT8; +typedef int8_t VMI_INT8; +typedef uint8_t VMI_BOOL; +typedef uint64_t VMI_CYCLES; + +#include <paravirtualInterface.h> +#include <mach_asm.h> + +#if defined(CONFIG_VMI_C_CONVENTION) +#define VMI_CLOBBER_ZERO_RETURNS "cc", "eax", "edx", "ecx" +#define VMI_CLOBBER_ONE_RETURN "cc", "e...