LibXenon
Bare-metal Xbox 360 homebrew library
Loading...
Searching...
No Matches
libxenon
drivers
ppc
register.h
Go to the documentation of this file.
1
#ifndef __ppc_register_h
2
#define __ppc_register_h
3
4
#include "
xenonsprs.h
"
5
6
#define __stringify(rn) #rn
7
8
#define mfmsr() ({unsigned long long rval; \
9
asm volatile("mfmsr %0"
: "=r" (rval)); rval;})
10
#define mtmsr(v) asm volatile("mtmsr %0"
: : "r" (v))
11
12
#define mfdec() ({unsigned int rval; \
13
asm volatile("mfdec %0"
: "=r" (rval)); rval;})
14
#define mtdec(v) asm volatile("mtdec %0"
: : "r" (v))
15
16
#define mfspr(rn) ({unsigned int rval; \
17
asm volatile("mfspr %0,"
__stringify(rn) \
18
: "=r" (rval)); rval;})
19
20
#define mfspr64(rn) ({unsigned long long rval; \
21
asm volatile("mfspr %0,"
__stringify(rn) \
22
: "=r" (rval)); rval;})
23
24
#define mtspr(rn, v) asm volatile("mtspr "
__stringify(rn) ",%0" : : "r" (v))
25
26
#endif
xenonsprs.h
Generated by
1.9.5