/SPARTAN/trunk/arch/ppc/include/asm.h |
---|
78,7 → 78,10 |
__asm__ volatile ( |
"mfmsr %%r31\n" |
"rlwimi %0, %%r31, 0, 17, 15\n" |
"cmpw 0, %0, %%r31\n" |
"beq 0f\n" |
"mtmsr %0\n" |
"0:\n" |
: "=r" (pri) |
: "0" (pri) |
: "%r31" |
85,6 → 88,19 |
); |
} |
/** Return raw priority level |
* |
* Return EE. |
*/ |
static inline pri_t cpu_priority_read(void) { |
pri_t v; |
__asm__ volatile ( |
"mfmsr %0\n" |
: "=r" (v) |
); |
return v; |
} |
/* TODO: implement the real stuff */ |
static inline __address get_stack_base(void) |
{ |