Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 3159 → Rev 3160

/branches/dynload/uspace/lib/libc/include/loader/pcb.h
33,11 → 33,10
* @brief Program Control Block interface.
*/
 
#ifndef ILOADER_PCB_H_
#define ILOADER_PCB_H_
#ifndef LIBC_PCB_H_
#define LIBC_PCB_H_
 
#include <sys/types.h>
#include <arch/pcb.h>
 
typedef void (*entry_point_t)(void);
 
44,7 → 43,7
/**
* Holds pointers to data passed from the program loader to the program
* and/or to the dynamic linker. This includes the program entry point,
* arguments, environment etc.
* arguments, environment variables etc.
*/
typedef struct {
/** Program entry point */
54,7 → 53,7
* ELF-specific data
*/
/** Pointer to ELF dynamic section of the program */
void *dynamic;
void *dynamic;
/** Pointer to dynamic section of the runtime linker */
void *rtld_dynamic;
/** Runtime-linker load bias */
61,6 → 60,9
uintptr_t rtld_bias;
} pcb_t;
 
// FIXME
#define PCB_ADDRESS 0x6fff0000
 
static inline pcb_t *__pcb_get(void) {
return (pcb_t *)PCB_ADDRESS;
}