2021-03-06 19:00:04 +00:00
|
|
|
// Make sure rustdoc accepts asm! for a foreign architecture.
|
|
|
|
|
2021-12-10 00:15:33 +00:00
|
|
|
use std::arch::asm;
|
2021-03-06 19:00:04 +00:00
|
|
|
|
2021-03-14 23:19:16 +00:00
|
|
|
// @has asm_foreign/fn.aarch64.html
|
|
|
|
pub unsafe fn aarch64(a: f64, b: f64) -> f64 {
|
2021-03-06 19:00:04 +00:00
|
|
|
let c;
|
|
|
|
asm!("add {:d}, {:d}, d0", out(vreg) c, in(vreg) a, in("d0") {
|
|
|
|
|| {};
|
|
|
|
b
|
|
|
|
});
|
|
|
|
c
|
|
|
|
}
|
|
|
|
|
2021-03-14 23:19:16 +00:00
|
|
|
// @has asm_foreign/fn.x86.html
|
|
|
|
pub unsafe fn x86(a: f64, b: f64) -> f64 {
|
2021-03-06 19:00:04 +00:00
|
|
|
let c;
|
|
|
|
asm!("addsd {}, {}, xmm0", out(xmm_reg) c, in(xmm_reg) a, in("xmm0") b);
|
|
|
|
c
|
|
|
|
}
|