Hi!

Yes, though I am still puzzled how it works on x86_64; it seems regvars
there are also accessed using fs, but x86_64 prevents you from writing
to segment registers.

As mentioned here http://en.wikipedia.org/wiki/X86_64#Windows in the 10th point Windows uses the GS segment register to store pointers to the TEB (see http://en.wikipedia.org/wiki/Thread_Environment_Block ) of the current running thread (x86 uses FS). So they should still be writable as the TEB is written to by the Win32 subsystem (of which a part runs in usermode) as part of its bookkeeping and maybe also by user applications to implement the 64 bit equivalent of SEH.

Regards,
Sven
_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to