diff options
author | 2022-01-30 16:11:15 +0800 | |
---|---|---|
committer | 2022-02-01 12:50:41 -0800 | |
commit | 990979ee984de6b73a6d30da385a7206dd17f738 (patch) | |
tree | ba224021f31b7e0a35232c3464d2624083759c44 | |
parent | 0ea0e03eb75ba82495bbb067c1906814405bbaf1 (diff) | |
download | rust-x86-990979ee984de6b73a6d30da385a7206dd17f738.tar.gz rust-x86-990979ee984de6b73a6d30da385a7206dd17f738.tar.zst rust-x86-990979ee984de6b73a6d30da385a7206dd17f738.zip |
Fix asm syntax of some VMX instructions
-rw-r--r-- | src/bits64/vmx.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/bits64/vmx.rs b/src/bits64/vmx.rs index f4d2f7e..ac910f1 100644 --- a/src/bits64/vmx.rs +++ b/src/bits64/vmx.rs @@ -31,7 +31,7 @@ fn vmx_capture_status() -> Result<()> { /// # Safety /// Needs CPL 0. pub unsafe fn vmxon(addr: u64) -> Result<()> { - asm!("vmxon ({0})", in(reg) addr, options(att_syntax)); + asm!("vmxon ({0})", in(reg) &addr, options(att_syntax)); vmx_capture_status() } @@ -52,7 +52,7 @@ pub unsafe fn vmxoff() -> Result<()> { /// # Safety /// Needs CPL 0. pub unsafe fn vmclear(addr: u64) -> Result<()> { - asm!("vmclear ({0})", in(reg) addr, options(att_syntax)); + asm!("vmclear ({0})", in(reg) &addr, options(att_syntax)); vmx_capture_status() } @@ -63,7 +63,7 @@ pub unsafe fn vmclear(addr: u64) -> Result<()> { /// # Safety /// Needs CPL 0. pub unsafe fn vmptrld(addr: u64) -> Result<()> { - asm!("vmptrld ({0})", in(reg) addr, options(att_syntax)); + asm!("vmptrld ({0})", in(reg) &addr, options(att_syntax)); vmx_capture_status() } @@ -84,7 +84,7 @@ pub unsafe fn vmptrst() -> Result<u64> { pub unsafe fn vmread(field: u32) -> Result<u64> { let field: u64 = field.into(); let value: u64; - asm!("vmread {1}, {0}", in(reg) field, out(reg) value, options(att_syntax)); + asm!("vmread {0}, {1}", in(reg) field, out(reg) value, options(att_syntax)); vmx_capture_status().and(Ok(value)) } |