У меня есть приведенный ниже фрагмент кода из исходного кода ядра для PowerPc.
#define SPRN_IVOR32 0x210 /* Interrupt Vector Offset Register 32 */
unsigned long ivor[3];
ivor[0] = mfspr(SPRN_IVOR32);
#define __stringify_1(x) #x
#define __stringify(x) __stringify_1(x)
#define mfspr(rn) ({unsigned long rval; \
asm volatile("mfspr %0," __stringify(rn) \
: "=r" (rval)); rval; })
Кроме того, в приведенном выше упражнении речь идет об эмуляции битов регистра MSR в PowerPc?
Может ли кто-нибудь помочь мне в том, что именно мы здесь делаем?
#define mfspr(rn) ({unsigned long rval; asm volatile("mfspr %0,%c1" : "=r" (rval) : "i" (rn)); rval; })
? - person David Wohlferd   schedule 02.09.2014