Index: kernel/arch/ia32/src/boot/multiboot.S
===================================================================
--- kernel/arch/ia32/src/boot/multiboot.S	(revision cfb1217d7123cbca17cad6d3023e7274209f2e89)
+++ kernel/arch/ia32/src/boot/multiboot.S	(revision d84398a712d42ccaa585aac0dacb41b9a0bd98d3)
@@ -29,4 +29,5 @@
  */
 
+#include <abi/asmtool.h>
 #include <arch/boot/boot.h>
 #include <arch/mm/page.h>
@@ -61,5 +62,4 @@
 
 .align 4
-.global multiboot_image_start
 multiboot_header:
 	.long MULTIBOOT_HEADER_MAGIC
@@ -72,5 +72,5 @@
 	.long multiboot_image_start
 
-multiboot_image_start:
+SYMBOL(multiboot_image_start)
 	cli
 	cld
@@ -162,5 +162,5 @@
  *
  */
-.global map_kernel_pse
+FUNCTION_BEGIN(map_kernel_pse)
 map_kernel_pse:
 	/* Paging features */
@@ -194,4 +194,5 @@
 	movl %ebx, %cr0
 	ret
+FUNCTION_END(map_kernel_pse)
 
 /** Setup mapping for the kernel (non-PSE variant).
@@ -201,6 +202,5 @@
  *
  */
-.global map_kernel_non_pse
-map_kernel_non_pse:
+FUNCTION_BEGIN(map_kernel_non_pse)
 	/* Paging features */
 	movl %cr4, %ecx
@@ -281,4 +281,5 @@
 		
 		ret
+FUNCTION_END(map_kernel_non_pse)
 
 /** Calculate unmapped address of the end of the kernel. */
@@ -707,20 +708,16 @@
 	.space 4096, 0
 
-.global bootstrap_idtr
-bootstrap_idtr:
+SYMBOL(bootstrap_idtr)
 	.word 0
 	.long 0
 
-.global bootstrap_gdtr
-bootstrap_gdtr:
+SYMBOL(bootstrap_gdtr)
 	.word GDT_SELECTOR(GDT_ITEMS)
 	.long KA2PA(gdt)
 
-.global multiboot_eax
-multiboot_eax:
+SYMBOL(multiboot_eax)
 	.long 0
 
-.global multiboot_ebx
-multiboot_ebx:
+SYMBOL(multiboot_ebx)
 	.long 0
 
Index: kernel/arch/ia32/src/boot/multiboot2.S
===================================================================
--- kernel/arch/ia32/src/boot/multiboot2.S	(revision cfb1217d7123cbca17cad6d3023e7274209f2e89)
+++ kernel/arch/ia32/src/boot/multiboot2.S	(revision d84398a712d42ccaa585aac0dacb41b9a0bd98d3)
@@ -27,4 +27,5 @@
  */
 
+#include <abi/asmtool.h>
 #include <arch/boot/boot.h>
 #include <arch/pm.h>
@@ -39,5 +40,4 @@
 
 .align 8
-.global multiboot2_image_start
 multiboot2_header_start:
 	.long MULTIBOOT2_HEADER_MAGIC
@@ -120,5 +120,5 @@
 multiboot2_header_end:
 
-multiboot2_image_start:
+SYMBOL(multiboot2_image_start)
 	cli
 	cld
