diff --git a/src/arch/x86_64/interrupt/handler.rs b/src/arch/x86_64/interrupt/handler.rs index 3ff1ed608ee75a9a3441fffcad255232e5a7afe0..06d060b176ae1a11b3184a6ee32db90c050052e6 100644 --- a/src/arch/x86_64/interrupt/handler.rs +++ b/src/arch/x86_64/interrupt/handler.rs @@ -211,8 +211,12 @@ macro_rules! function { ($name:ident => { $($body:expr,)+ }) => { intel_asm!( ".global ", stringify!($name), "\n", + ".type ", stringify!($name), ", @function\n", + ".section .text.", stringify!($name), ", \"ax\", @progbits\n", stringify!($name), ":\n", - $($body,)+ + $($body),+, + ".size ", stringify!($name), ", . - ", stringify!($name), "\n", + ".text\n", ); extern "C" { pub fn $name();