27 lines
489 B
C
27 lines
489 B
C
#ifndef LIBLAUNCH_STACK_H_
|
|
#define LIBLAUNCH_STACK_H_
|
|
|
|
#include <mango/types.h>
|
|
|
|
struct stack_writer {
|
|
virt_addr_t w_local_sp;
|
|
virt_addr_t w_remote_sp;
|
|
};
|
|
|
|
extern void stack_writer_init(
|
|
struct stack_writer *w,
|
|
virt_addr_t local_sp,
|
|
virt_addr_t remote_sp);
|
|
|
|
extern void *stack_writer_put_string(
|
|
struct stack_writer *w,
|
|
const char *s,
|
|
virt_addr_t *out_remote);
|
|
extern void *stack_writer_put(
|
|
struct stack_writer *w,
|
|
const void *p,
|
|
size_t len,
|
|
virt_addr_t *out_remote);
|
|
|
|
#endif
|