Changeset 4bf0926e in mainline for kernel/arch/amd64/src
- Timestamp:
- 2016-09-01T22:14:30Z (9 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2c2d54a
- Parents:
- 8b6aa39
- Location:
- kernel/arch/amd64/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/amd64/src/boot/multiboot.S
r8b6aa39 r4bf0926e 430 430 movl multiboot_eax, %edi 431 431 movl multiboot_ebx, %esi 432 433 #ifdef MEMORY_MODEL_large 434 movabsq $amd64_pre_main, %rax 435 callq *%rax 436 #else 432 437 callq amd64_pre_main 433 438 #endif 439 434 440 long_status $status_main 435 441 436 442 /* Call main_bsp() */ 437 callq main_bsp 443 #ifdef MEMORY_MODEL_large 444 movabsq $main_bsp, %rax 445 callq *%rax 446 #else 447 callq main_bsp 448 #endif 438 449 439 450 /* Not reached */ … … 622 633 ptl2gen 512 7 623 634 635 #ifdef MEMORY_MODEL_kernel 624 636 .align 4096 625 637 ptl_1: … … 638 650 .quad ptl_2_1g + (PTL_WRITABLE | PTL_PRESENT) 639 651 640 641 652 .align 4096 642 653 SYMBOL(ptl_0) … … 644 655 .fill 510, 8, 0 645 656 .quad ptl_1 + (PTL_WRITABLE | PTL_PRESENT) 657 #endif 658 659 #ifdef MEMORY_MODEL_large 660 .align 4096 661 ptl_1: 662 /* Identity mapping for [0; 8G) */ 663 .quad ptl_2_0g + (PTL_WRITABLE | PTL_PRESENT) 664 .quad ptl_2_1g + (PTL_WRITABLE | PTL_PRESENT) 665 .quad ptl_2_2g + (PTL_WRITABLE | PTL_PRESENT) 666 .quad ptl_2_3g + (PTL_WRITABLE | PTL_PRESENT) 667 .quad ptl_2_4g + (PTL_WRITABLE | PTL_PRESENT) 668 .quad ptl_2_5g + (PTL_WRITABLE | PTL_PRESENT) 669 .quad ptl_2_6g + (PTL_WRITABLE | PTL_PRESENT) 670 .quad ptl_2_7g + (PTL_WRITABLE | PTL_PRESENT) 671 .fill 504, 8, 0 672 673 .align 4096 674 SYMBOL(ptl_0) 675 .quad ptl_1 + (PTL_WRITABLE | PTL_PRESENT) 676 .fill 255, 8, 0 677 .quad ptl_1 + (PTL_WRITABLE | PTL_PRESENT) 678 .fill 255, 8, 0 679 #endif 646 680 647 681 .section K_DATA_START, "aw", @progbits -
kernel/arch/amd64/src/boot/multiboot2.S
r8b6aa39 r4bf0926e 253 253 movl multiboot_eax, %edi 254 254 movl multiboot_ebx, %esi 255 callq amd64_pre_main 255 256 #ifdef MEMORY_MODEL_large 257 movabsq $amd64_pre_main, %rax 258 callq *%rax 259 #else 260 callq amd64_pre_main 261 #endif 256 262 257 263 /* Call main_bsp() */ 258 callq main_bsp 264 #ifdef MEMORY_MODEL_large 265 movabsq $main_bsp, %rax 266 callq *%rax 267 #else 268 callq main_bsp 269 #endif 259 270 260 271 /* Not reached */ -
kernel/arch/amd64/src/context.S
r8b6aa39 r4bf0926e 50 50 movq %r14, CONTEXT_OFFSET_R14(%rdi) 51 51 movq %r15, CONTEXT_OFFSET_R15(%rdi) 52 52 53 #ifdef MEMORY_MODEL_large 54 movabsq $vreg_ptr, %rsi 55 movq (%rsi), %rsi 56 #else 53 57 movq vreg_ptr, %rsi 58 #endif 54 59 movq %fs:VREG_TP(%rsi), %rsi 55 60 movq %rsi, CONTEXT_OFFSET_TP(%rdi) … … 79 84 movq %rdx, (%rsp) 80 85 81 movq CONTEXT_OFFSET_TP(%rdi), %rcx 86 movq CONTEXT_OFFSET_TP(%rdi), %rcx 87 #ifdef MEMORY_MODEL_large 88 movabsq $vreg_ptr, %rsi 89 movq (%rsi), %rsi 90 #else 82 91 movq vreg_ptr, %rsi 92 #endif 83 93 movq %rcx, %fs:VREG_TP(%rsi) 84 94
Note:
See TracChangeset
for help on using the changeset viewer.