Back to index

glibc  2.9
Defines
sysdep.h File Reference
#include <syscall.h>
#include <sysdeps/mach/sysdep.h>

Go to the source code of this file.

Defines

#define LOSE   asm volatile ("1: b 1b")
#define START_MACHDEP   asm ("\ .text\n\ .globl _start\n\ .ent _start\n\_start:\n\ # Put initial SP in a0.\n\ move $4, $29\n\ # Jump to _start0; don't return.\n\ j _start0\n\ .end _start\n\");
#define START_ARGS   int *entry_sp
#define SNARF_ARGS(argc, argv, envp)
#define CALL_WITH_SP(fn, sp)
#define RETURN_TO(sp, pc, retval)
#define STACK_GROWTH_DOWN

Define Documentation

#define CALL_WITH_SP (   fn,
  sp 
)
Value:
({ register int __fn = fn, __sp = (int) sp; \
     asm volatile ("move $sp,%0; j %1" : : "r" (__sp), "r" (__fn));})

Definition at line 48 of file sysdep.h.

#define LOSE   asm volatile ("1: b 1b")

Definition at line 19 of file sysdep.h.

#define RETURN_TO (   sp,
  pc,
  retval 
)
Value:
asm volatile ("move $29, %0; move $2, %2; move $25, %1; jr $25" \
              : : "r" (sp), "r" (pc), "r" (retval))

Definition at line 52 of file sysdep.h.

#define SNARF_ARGS (   argc,
  argv,
  envp 
)
Value:
do                                                                   \
    {                                                                \
      register char **p;                                             \
                                                                     \
      argc = *entry_sp;                                                     \
      argv = (char **) (entry_sp + 1);                                      \
      p = argv;                                                             \
      while (*p++ != NULL)                                           \
       ;                                                             \
      if (p >= (char **) argv[0])                                    \
       --p;                                                          \
      envp = p;                                                      \
    } while (0)

Definition at line 33 of file sysdep.h.

Definition at line 56 of file sysdep.h.

#define START_ARGS   int *entry_sp

Definition at line 32 of file sysdep.h.

#define START_MACHDEP   asm ("\ .text\n\ .globl _start\n\ .ent _start\n\_start:\n\ # Put initial SP in a0.\n\ move $4, $29\n\ # Jump to _start0; don't return.\n\ j _start0\n\ .end _start\n\");

Definition at line 21 of file sysdep.h.