|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XEN PATCH 1/1] xen/x86: drop wrappers of SVM instructions
The new toolchain baseline knows the SVM instructions.
Resolves: xen-project/xen#204
Signed-off-by: Alexander M. Merritt <alexander@xxxxxxxxx>
---
xen/arch/x86/hvm/svm/svm.h | 14 +++-----------
xen/arch/x86/include/asm/asm-defns.h | 12 ------------
2 files changed, 3 insertions(+), 23 deletions(-)
diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
index beeaaab4f7..5c5e91a1ac 100644
--- a/xen/arch/x86/hvm/svm/svm.h
+++ b/xen/arch/x86/hvm/svm/svm.h
@@ -23,25 +23,17 @@ void __update_guest_eip(struct cpu_user_regs *regs,
unsigned int inst_len);
static inline void svm_vmload_pa(paddr_t vmcb)
{
- asm volatile (
- ".byte 0x0f,0x01,0xda" /* vmload */
- : : "a" (vmcb) : "memory" );
+ asm volatile ( "vmload" : : "a" (vmcb) : "memory" );
}
static inline void svm_vmsave_pa(paddr_t vmcb)
{
- asm volatile (
- ".byte 0x0f,0x01,0xdb" /* vmsave */
- : : "a" (vmcb) : "memory" );
+ asm volatile ( "vmsave" : : "a" (vmcb) : "memory" );
}
static inline void svm_invlpga(unsigned long linear, uint32_t asid)
{
- asm volatile (
- ".byte 0x0f,0x01,0xdf"
- : /* output */
- : /* input */
- "a" (linear), "c" (asid) );
+ asm volatile ( "invlpga" : /* output */ : /* input */ "a" (linear), "c"
(asid) );
}
/*
diff --git a/xen/arch/x86/include/asm/asm-defns.h
b/xen/arch/x86/include/asm/asm-defns.h
index 32d6b44910..5a64b42495 100644
--- a/xen/arch/x86/include/asm/asm-defns.h
+++ b/xen/arch/x86/include/asm/asm-defns.h
@@ -10,18 +10,6 @@
.endm
#endif
-.macro vmrun
- .byte 0x0f, 0x01, 0xd8
-.endm
-
-.macro stgi
- .byte 0x0f, 0x01, 0xdc
-.endm
-
-.macro clgi
- .byte 0x0f, 0x01, 0xdd
-.endm
-
/*
* Call a noreturn function. This could be JMP, but CALL results in a more
* helpful backtrace. BUG is to catch functions which do decide to return...
--
2.45.2
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |