27 #ifndef _RTEMS_SCORE_CPU_ASM_H 28 #define _RTEMS_SCORE_CPU_ASM_H 45 __asm__ volatile (
"outb %0, %1" : :
"a" (val),
"Nd" (port) );
52 __asm__ volatile (
"movw %%cs, %0" :
"=r" (segment) :
"0" (segment) );
59 __asm__ volatile (
"movq %0, %%cr3" :
"=r" (segment) :
"0" (segment) );
63 uint32_t
code, uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx
66 :
"=a" (*eax),
"=b" (*ebx),
"=c" (*ecx),
"=d" (*edx)
74 "=a" (low),
"=d" (high) :
76 return low | (uint64_t) high << 32;
82 "a" (low),
"d" (high),
"c" (msr) );
#define RTEMS_INLINE_ROUTINE
Definition: basedefs.h:65
register struct Per_CPU_Control *_SPARC_Per_CPU_current __asm__("g6")
The pointer to the current per-CPU control is available via register g6.
Definition: inftrees.h:24