On 22 Oct 2008, at 10:46, Саша Иваненко wrote:
I have an assembler procedure of about a 1500 lines of code. The
problem is the jumps are generated with absolute addresses only,
even if I explicitly specify
"short" postfix. Why is it? The code size is critical for me. I am
using lazarus with fpc 2.2.2. Example code:
sub eax,dword ptr [esp]
add esp,04h
cmp eax,0FFFh
jbe short @not_traced // JBE 0xABSOLUTE_ADDRESS GENERATED - WHY???!!!
It's not an absolute address, but a 32 bit relative address.
popad
popad
retn
@not_traced:
Any suggestions? Thank you.
You can try using the external assembler (-Aas). And file a bug report
against the internal one (although I thought there was already a bug
report about this, I can't find it immediately)
Jonas_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal