|
From: | Rūtenis Turčinas |
Subject: | Re: [Tinycc-devel] TCC very interesting error |
Date: | Wed, 28 Oct 2009 13:03:58 +0200 |
Adding this one more variable causes the local stack grow over 4096. This
requires the usage of __chkstk on windows (because there, unlike on linux,
each new stack page needs to be touched explicitely to make sure it gets
physically mapped)
However there seems a problem with latest TCC having problems to assemble
its own __chkstk function. In particular there are some 66 prefixes that should
not be there. See below.
Mr. Frederic Feret, would you look into it ?
Thanks,
--- grischka
004010A0 66:872C24 xchg [esp],bp
004010A4 55 push ebp
004010A5 66:8D6C24 04 lea bp,[esp+4]
004010AA 51 push ecx
004010AB 89E9 mov ecx,ebp
004010AD 66:81E9 0010 sub cx,1000
004010B2 66:8501 test [ecx],ax
004010B5 66:2D 0010 sub ax,1000
004010B9 66:3D 0010 cmp ax,1000
004010BD - 66:7D ED jge short 000010AD
004010C0 29C1 sub ecx,eax
004010C2 66:8501 test [ecx],ax
004010C5 89E0 mov eax,esp
004010C7 89CC mov esp,ecx
004010C9 66:8B08 mov cx,[eax]
004010CC 66:FF60 04 jmp near [eax+4]
[Prev in Thread] | Current Thread | [Next in Thread] |