Changeset 8844e70 in mainline for kernel/arch/ia32/src/asm.S
- Timestamp:
- 2016-04-11T17:03:47Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 3b0f1b9a
- Parents:
- 3a34852
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia32/src/asm.S
r3a34852 r8844e70 31 31 */ 32 32 33 #include <abi/asmtool.h> 33 34 #include <arch/pm.h> 34 35 #include <arch/cpu.h> … … 37 38 38 39 .text 39 .global paging_on40 .global enable_l_apic_in_msr41 .global memcpy_from_uspace42 .global memcpy_from_uspace_failover_address43 .global memcpy_to_uspace44 .global memcpy_to_uspace_failover_address45 .global early_putchar46 40 47 41 #define MEMCPY_DST 4 … … 64 58 * 65 59 */ 66 memcpy_from_uspace: 67 memcpy_to_uspace: 60 FUNCTION_BEGIN(memcpy_from_uspace) 61 FUNCTION_BEGIN(memcpy_to_uspace) 68 62 movl %edi, %edx /* save %edi */ 69 63 movl %esi, %eax /* save %esi */ … … 93 87 movl MEMCPY_DST(%esp), %eax 94 88 ret 89 FUNCTION_END(memcpy_from_uspace) 90 FUNCTION_END(memcpy_to_uspace) 95 91 96 92 /* … … 98 94 * above had caused a page fault. 99 95 */ 100 memcpy_from_uspace_failover_address: 101 memcpy_to_uspace_failover_address: 96 SYMBOL(memcpy_from_uspace_failover_address) 97 SYMBOL(memcpy_to_uspace_failover_address) 102 98 movl %edx, %edi 103 99 movl %eax, %esi … … 112 108 * 113 109 */ 114 paging_on: 110 FUNCTION_BEGIN(paging_on) 115 111 movl %cr0, %edx 116 112 orl $(1 << 31), %edx /* paging on */ … … 123 119 0: 124 120 ret 121 FUNCTION_END(paging_on) 125 122 126 123 /** Enable local APIC … … 129 126 * 130 127 */ 131 enable_l_apic_in_msr: 128 FUNCTION_BEGIN(enable_l_apic_in_msr) 132 129 movl $0x1b, %ecx 133 130 rdmsr … … 136 133 wrmsr 137 134 ret 135 FUNCTION_END(enable_l_apic_in_msr) 138 136 139 137 /* … … 152 150 * entirely in registers. 153 151 */ 154 .global sysenter_handler 155 sysenter_handler: 152 SYMBOL(sysenter_handler) 156 153 157 154 /* … … 232 229 * This is the legacy syscall handler using the interrupt mechanism. 233 230 */ 234 .global int_syscall 235 int_syscall: 231 SYMBOL(int_syscall) 236 232 subl $(ISTATE_SOFT_SIZE + 4), %esp 237 233 … … 319 315 320 316 .macro handler i 321 .global int_\i 322 int_\i: 317 SYMBOL(int_\i) 323 318 /* 324 319 * This macro distinguishes between two versions of ia32 … … 462 457 * 463 458 */ 464 early_putchar: 459 FUNCTION_BEGIN(early_putchar) 465 460 466 461 #if ((defined(CONFIG_EGA)) && (!defined(CONFIG_FB))) … … 594 589 595 590 ret 596 591 FUNCTION_END(early_putchar) 592
Note:
See TracChangeset
for help on using the changeset viewer.