Skip to content

Commit 8785968

Browse files
committed
td-shim,tdx-tdcall: gate asm_td_call and asm_td_vmcall
Signed-off-by: Stanislaw Grams <[email protected]>
1 parent 15c85e2 commit 8785968

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

td-shim/src/bin/td-shim/asm/mod.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ use core::arch::global_asm;
55

66
global_asm!(include_str!("msr64.asm"));
77

8-
#[cfg(not(feature = "tdvmcall"))]
8+
#[cfg(feature = "tdvmcall")]
99
global_asm!(include_str!("exception.asm"));
1010
#[cfg(not(feature = "tdvmcall"))]
11-
global_asm!(include_str!("ap_loop_notdvmcall.asm"));
12-
13-
#[cfg(feature = "tdvmcall")]
1411
global_asm!(include_str!("exception_notdvmcall.asm"));
12+
1513
#[cfg(feature = "tdvmcall")]
1614
global_asm!(include_str!("ap_loop.asm"));
15+
#[cfg(not(feature = "tdvmcall"))]
16+
global_asm!(include_str!("ap_loop_notdvmcall.asm"));
1717

1818
extern "C" {
1919
fn ap_relocated_func();

tdx-tdcall/src/asm/mod.rs

+6-4
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
use core::arch::global_asm;
55
use core::ffi::c_void;
66

7-
#[cfg(feature = "use_tdx_emulation")]
7+
#[cfg(all(feature = "use_tdx_emulation", feature = "tdcall"))]
88
global_asm!(include_str!("tdcall_emu.asm"));
99

10-
#[cfg(feature = "use_tdx_emulation")]
10+
#[cfg(all(feature = "use_tdx_emulation", feature = "tdvmcall"))]
1111
global_asm!(include_str!("tdvmcall_emu.asm"));
1212

13-
#[cfg(not(feature = "use_tdx_emulation"))]
13+
#[cfg(all(not(feature = "use_tdx_emulation"), feature = "tdcall"))]
1414
global_asm!(include_str!("tdcall.asm"));
1515

16-
#[cfg(not(feature = "use_tdx_emulation"))]
16+
#[cfg(all(not(feature = "use_tdx_emulation"), feature = "tdvmcall"))]
1717
global_asm!(include_str!("tdvmcall.asm"));
1818

1919
extern "win64" {
20+
#[cfg(feature = "tdcall")]
2021
pub(crate) fn asm_td_call(args: *mut c_void) -> u64;
22+
#[cfg(feature = "tdvmcall")]
2123
pub(crate) fn asm_td_vmcall(args: *mut c_void, do_sti: u64) -> u64;
2224
}

0 commit comments

Comments
 (0)