Hi everyone,

Re: https://bugs.freepascal.org/view.php?id=32637

I apologise for my slight outburst. I didn't quite appreciate Thaddy's response 
when I asked how to get SEH to 
keep track of pushed registers ( 
http://forum.lazarus.freepascal.org/index.php/topic,39071.msg266937 ), but 
Marcov gave me the answer.

Long story short, I have now modified my assembler code that contains 
".seh_pushreg %rdi" after each "push 
%rdi" instruction (the Linux versions don't actually push any registers because 
the required %rdi register is 
volatile on that platform).  I'm just doing a compilation of FPC, then I'll 
upload a new patch to the bug 
report in question (any way to remove the old ones?).

Question though (although, by coincidence, it doesn't apply here), for the sake 
of SEH, must the stack be 
aligned in ALL circumstances - for example, if you push a register halfway 
through the procedure, must you then 
do something to ensure the stack returns to a 16-byte boundary and the SEH made 
aware of it?

Gareth
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to