"1:\t" \
"popl %%ebp\n\t" \
"popfl" \
- :"=m" (prev->thread.esp),"=m" (prev->thread.eip), \
+ :"=m" (prev->thread.sp),"=m" (prev->thread.ip), \
"=a" (last),"=S" (esi),"=D" (edi) \
- :"m" (next->thread.esp),"m" (next->thread.eip), \
+ :"m" (next->thread.sp),"m" (next->thread.ip), \
"2" (prev), "d" (next)); \
} while (0)
asm volatile("wbinvd": : :"memory");
}
-static inline void clflush(volatile void *__p)
+static inline void clflush(void *__p)
{
asm volatile("clflush %0" : "+m" (*(char __force *)__p));
}