FastMM4 icon indicating copy to clipboard operation
FastMM4 copied to clipboard

FullDebugMode does not work on OSX32

Open mterrisse opened this issue 8 years ago • 1 comments

There is an access violation in GetStackRange (FastMM_FullDebugMode.dpr) when it executes mov ecx, fs:[4]

procedure GetStackRange(var AStackBaseAddress, ACurrentStackPointer: NativeUInt); asm {$if SizeOf(Pointer) = 8} mov rax, gs:[abs 8] mov [rcx], rax mov [rdx], rbp {$else} mov ecx, fs:[4] mov [eax], ecx mov [edx], ebp {$ifend} end;

This code can work only on Windows, it queries the Win32 Thread Information Block. I can go further if I change mov ecx, fs:[4] mov [eax], ecx to mov [eax], $ffffffff

Regards,

Michel Terrisse

mterrisse avatar Jul 10 '17 14:07 mterrisse

Hello mterrisse,

If this only works on Windows but not on OSX (and probably not on Unix), I think you should add a conditional define.

-- Best regards, Maxim Masiutin

maximmasiutin avatar Jul 10 '17 15:07 maximmasiutin