#ifdef __STDC__
# define __CONCAT(x,y) x ## y
# define __STRING(x) #x
#else
# define __CONCAT(x,y) x/**/y
# define __STRING(x) "x"
#endif
#define SET_CPUVAR(off,reg) \
mvhi r25, hi(_C_LABEL(cpu_info_store)) ; \
ori r25, r25, lo(_C_LABEL(cpu_info_store)) ; \
lw reg, (r25+__CONCAT(CPU_INFO_,off))
or
.macro set_cpuvar off, reg
mvhi r25, hi(_C_LABEL(cpu_info_store))
ori r25, r25, lo(_C_LABEL(cpu_info_store))
lw \reg, (r25+__CONCAT(CPU_INFO_,\off))
.endm