3 // revisions: mirunsafeck thirunsafeck
4 // [thirunsafeck]compile-flags: -Z thir-unsafeck
8 use std::arch::{asm, global_asm};
10 fn const_generic<const X: usize>() -> usize {
13 asm!("mov {}, {}", out(reg) a, const X);
18 const fn constfn(x: usize) -> usize {
25 asm!("mov {}, {}", out(reg) a, const 5);
29 asm!("mov {}, {}", out(reg) b, const constfn(5));
33 asm!("mov {}, {}", out(reg) c, const constfn(5) + constfn(5));
37 let d = const_generic::<5>();
41 global_asm!("mov eax, {}", const 5);
42 global_asm!("mov eax, {}", const constfn(5));
43 global_asm!("mov eax, {}", const constfn(5) + constfn(5));