正在编译当前gladman AES library
,我在aes_modes.c
收到警告,所有人都在说"warning C4731: ... frame pointer register 'ebx' modified by inline assembly code"
这听起来非常令人担忧,我不希望我的应用程序因堆栈损坏而崩溃,但我几乎无法读取x86汇编程序。任何人都可以建议是否可以安全地忽略这些警告吗?
答案 0 :(得分:0)
如果保存并恢复,则可以安全地忽略。例如。
push ebx
;use the ebx to do something else
pop ebx
请参阅此MSDN page,其中解释了该错误的含义。
如果未在代码中完成,您可以添加并测试它。
答案 1 :(得分:0)
忽略此警告似乎是不安全的。 代码在XP上运行良好,但在Windows 7上测试时,它在aes_decrypt汇编程序例程中崩溃。我将转向纯C版本。