I’m trying to compile inline assembly (with -fasm-blocks) which works in MSVC, but GCC gives me the junk `(%ebp)+4′ after expression error… Why won’t it accept the syntax and how should I fix this?
uint64_t _tmp = 100;
_asm
{
//_tmp value may be changed
//...
cmp dword ptr _tmp, 100 // Ok
jnae temp
cmp dword ptr _tmp + 4, 50 // It seems GCC doesn't want to accept _tmp + 4
jnae temp
//...
temp:
};
You should change it to: