// Test LVI load hardening on SGX enclave code | |
//@ assembly-output: emit-asm | |
//@ compile-flags: --crate-type staticlib | |
//@ only-x86_64-fortanix-unknown-sgx | |
#[no_mangle] | |
pub extern "C" fn plus_one(r: &mut u64) { | |
*r = *r + 1; | |
} | |
// CHECK: plus_one | |
// CHECK: lfence | |
// CHECK-NEXT: incq | |
// CHECK: popq [[REGISTER:%[a-z]+]] | |
// CHECK-NEXT: lfence | |
// CHECK-NEXT: jmpq *[[REGISTER]] |