elfload.c (e116b92d01c2cd75957a9f8ad1d4932292867b81) | elfload.c (3c13b0ffe76057e93e007bedbad3cc556146e3ed) |
---|---|
1/* This is the Linux kernel elf-loading code, ported into user space */ 2#include "qemu/osdep.h" 3#include <sys/param.h> 4 5#include <sys/prctl.h> 6#include <sys/resource.h> 7#include <sys/shm.h> 8 --- 1873 unchanged lines hidden (view full) --- 1882#define STACK_GROWS_DOWN 0 1883#define STACK_ALIGNMENT 64 1884 1885#define VDSO_HEADER "vdso.c.inc" 1886 1887static inline void init_thread(struct target_pt_regs *regs, 1888 struct image_info *infop) 1889{ | 1/* This is the Linux kernel elf-loading code, ported into user space */ 2#include "qemu/osdep.h" 3#include <sys/param.h> 4 5#include <sys/prctl.h> 6#include <sys/resource.h> 7#include <sys/shm.h> 8 --- 1873 unchanged lines hidden (view full) --- 1882#define STACK_GROWS_DOWN 0 1883#define STACK_ALIGNMENT 64 1884 1885#define VDSO_HEADER "vdso.c.inc" 1886 1887static inline void init_thread(struct target_pt_regs *regs, 1888 struct image_info *infop) 1889{ |
1890 regs->iaoq[0] = infop->entry; 1891 regs->iaoq[1] = infop->entry + 4; | 1890 regs->iaoq[0] = infop->entry | PRIV_USER; 1891 regs->iaoq[1] = regs->iaoq[0] + 4; |
1892 regs->gr[23] = 0; 1893 regs->gr[24] = infop->argv; 1894 regs->gr[25] = infop->argc; 1895 /* The top-of-stack contains a linkage buffer. */ 1896 regs->gr[30] = infop->start_stack + 64; 1897 regs->gr[31] = infop->entry; 1898} 1899 --- 2560 unchanged lines hidden --- | 1892 regs->gr[23] = 0; 1893 regs->gr[24] = infop->argv; 1894 regs->gr[25] = infop->argc; 1895 /* The top-of-stack contains a linkage buffer. */ 1896 regs->gr[30] = infop->start_stack + 64; 1897 regs->gr[31] = infop->entry; 1898} 1899 --- 2560 unchanged lines hidden --- |