4 #define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
5 #endif /* GCC_VERSION */
8 * k0 ($26) holds the pointer to the global_data; t9 ($25) is a call-
9 * clobbered register that is also used to set gp ($26). Note that the
10 * jr instruction also executes the instruction immediately following
11 * it; however, GCC/mips generates an additional `nop' after each asm
14 #define EXPORT_FUNC(x) \
18 " lw $25, %0($26)\n" \
19 " lw $25, %1($25)\n" \
21 : : "i"(offsetof(gd_t, jt)), "i"(XF_ ## x * sizeof(void *)) : "t9");
23 /* This function is necessary to prevent the compiler from
24 * generating prologue/epilogue, preparing stack frame etc.
25 * The stub functions are special, they do not use the stack
26 * frame passed to them, but pass it intact to the actual
27 * implementation. On the other hand, asm() statements with
28 * arguments can be used only inside the functions (gcc limitation)
30 #if GCC_VERSION < 3004
32 #endif /* GCC_VERSION */
33 void __attribute__((unused
)) dummy(void)
39 extern unsigned long __bss_start
, _end
;
41 void app_startup(char **argv
)
43 unsigned long * cp
= &__bss_start
;
This page took 0.044363 seconds and 5 git commands to generate.