diff options
| author | Austin Clements <amdragon@mit.edu> | 2011-09-04 15:51:46 -0400 | 
|---|---|---|
| committer | Austin Clements <amdragon@mit.edu> | 2011-09-04 15:51:46 -0400 | 
| commit | 2fc6c35b2fd64a15d7c4cc54c9e8733c3632039d (patch) | |
| tree | 0e208790a58190b2f8daa57b365e3e72f20e84df /entry.S | |
| parent | 68b58727166bbb339f4790ec779a5a16772557f6 (diff) | |
| download | xv6-labs-2fc6c35b2fd64a15d7c4cc54c9e8733c3632039d.tar.gz xv6-labs-2fc6c35b2fd64a15d7c4cc54c9e8733c3632039d.tar.bz2 xv6-labs-2fc6c35b2fd64a15d7c4cc54c9e8733c3632039d.zip | |
Make the ELF entry point a physical address
This way, the bootloader doesn't have to translate the entry point.
This also makes xv6 multiboot-compliant and follows the convention
used by Linux.
Diffstat (limited to 'entry.S')
| -rw-r--r-- | entry.S | 13 | 
1 files changed, 7 insertions, 6 deletions
| @@ -25,15 +25,16 @@  .globl multiboot_header  multiboot_header:    #define magic 0x1badb002 -  #define flags (1<<16 | 1<<0) +  #define flags 0    .long magic    .long flags    .long (-magic-flags) -  .long multiboot_header  # beginning of image -  .long multiboot_header -  .long edata -  .long end -  .long entry + +# By convention, the _start symbol specifies the ELF entry point. +# Since we haven't set up virtual memory yet, our entry point is +# the physical address of 'entry'. +.globl _start +_start = V2P_WO(entry)  # Entering xv6 on boot processor.  Machine is mostly set up.  .globl entry | 
