Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/loader/elf_load.c

    rbae7bdc ra000878c  
    22 * Copyright (c) 2006 Sergey Bondari
    33 * Copyright (c) 2006 Jakub Jermar
    4  * Copyright (c) 2011 Jiri Svoboda
     4 * Copyright (c) 2008 Jiri Svoboda
    55 * All rights reserved.
    66 *
     
    5353#include <smc.h>
    5454#include <loader/pcb.h>
    55 #include <entry_point.h>
    5655
    5756#include "elf.h"
    5857#include "elf_load.h"
     58#include "arch.h"
    5959
    6060#define DPRINTF(...)
     
    109109        int fd;
    110110        int rc;
    111        
     111
    112112        fd = open(file_name, O_RDONLY);
    113113        if (fd < 0) {
     
    136136void elf_run(elf_info_t *info, pcb_t *pcb)
    137137{
    138         entry_point_jmp(info->entry, pcb);
     138        program_run(info->entry, pcb);
    139139
    140140        /* not reached */
     
    300300        case PT_NULL:
    301301        case PT_PHDR:
    302         case PT_NOTE:
    303302                break;
    304303        case PT_LOAD:
     
    311310        case PT_DYNAMIC:
    312311        case PT_SHLIB:
     312        case PT_NOTE:
    313313        case PT_LOPROC:
    314314        case PT_HIPROC:
     
    344344        seg_ptr = (void *) seg_addr;
    345345
    346         DPRINTF("Load segment at addr %p, size 0x%x\n", (void *) seg_addr,
     346        DPRINTF("Load segment at addr %p, size 0x%x\n", seg_addr,
    347347                entry->p_memsz);
    348348
     
    372372        mem_sz = entry->p_memsz + (entry->p_vaddr - base);
    373373
    374         DPRINTF("Map to seg_addr=%p-%p.\n", (void *) seg_addr,
    375             (void *) (entry->p_vaddr + bias +
    376             ALIGN_UP(entry->p_memsz, PAGE_SIZE)));
     374        DPRINTF("Map to seg_addr=%p-%p.\n", seg_addr,
     375        entry->p_vaddr + bias + ALIGN_UP(entry->p_memsz, PAGE_SIZE));
    377376
    378377        /*
     
    387386        }
    388387
    389         DPRINTF("as_area_create(%p, %#zx, %d) -> %p\n",
    390             (void *) (base + bias), mem_sz, flags, (void *) a);
     388        DPRINTF("as_area_create(%p, 0x%x, %d) -> 0x%lx\n",
     389                base + bias, mem_sz, flags, (uintptr_t)a);
    391390
    392391        /*
     
    465464                    (void *)((uint8_t *)entry->sh_addr + elf->bias);
    466465                DPRINTF("Dynamic section found at %p.\n",
    467                     (void *) elf->info->dynamic);
     466                        (uintptr_t)elf->info->dynamic);
    468467                break;
    469468        default:
Note: See TracChangeset for help on using the changeset viewer.