Huw Davies huw@codeweavers.com writes:
When delay loading a symbol, Delphi saves rcx, rdx, r8 and r9 to the stack. It then calls GetProcAddress(), pops the saved registers and calls the function. This works fine if all of the parameters are ints. However, since it does not save xmm0 - 3, it relies on GetProcAddress() preserving these registers if the function takes floating point parameters.
Is that really inside Delphi code? Don't we have the same bug in ours?