大佬教程收集整理的这篇文章主要介绍了汇编程序和 gcc 中的 IRET,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的 gcc 说:
@H_211_2@macros.h:1010: 警告:没有给出指令助记符后缀,也没有寄存器操作数;对 `iret' 使用默认值#define cx_asmaTT(s) \
__asm__ __volatile__(".att_Syntax prefix");__asm__ __volatile__(s);__asm__ __volatile__(".att_Syntax noprefix");
#if Defined(CX_X86_64) || defined(CX_X86_32)
voID set_eflags32(uint32_t flags) {
#ifdef CX_ENV64BIT
cx_asmaTT(
"mov %%rsp,%%rbp # save stack pointer\n\t"
"push 4(%%rbp) # ss\n\t"
"push 8(%%rbp) # esp\n\t"
"pushfq # eflags\n\t"
"or %%rbx,(%%rsp) # set VM flags\n\t"
"push 12(%%rbp) # cs\n\t"
"push 16(%%rbp) # eip\n\t"
"iret\n\t"
:
: "b" (flags)
);
#elif Defined CX_ENV32BIT
//...
#else
#error *** only implemented for 32 and 64 bits ***
#endif
}
#endif
问题出在哪里?
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的汇编程序和 gcc 中的 IRET全部内容,希望文章能够帮你解决汇编程序和 gcc 中的 IRET所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。