|
Re: Dynamic-extent ahead: msg#00359lisp.cmucl.devel
Raymond Toy <toy@xxxxxxxxxxxxxxx> writes: > Gerd> (defun dynamic-extent-allocation-p (vars vals) nil) > > Gerd> should work, I think. > > Doesn't that disable everything? The function DYNAMIC-EXTENT-ALLOCATION-P should only be called in the LET cases. When it returns false, dynamic-extent is not done, declaration or not. > Anyway, as an experiment, I decided to make the > %dynamic-extent-{start,end} do nothing, in case I was screwing up the > vops. Are these really necessary? If we don't save and restore the stack > pointer, should it be ok? When the function returns, the stack > pointer gets restored anyway. > > Is that right? As an example why they are needed, consider the case that such a dynamic extent appears as an argument in a function call. Other args might have been pushed on the stack, and the stack manipulation done by dynamic-extent would make these args untraceable for the called function, if we don't clean up after us. At least on x86. |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | timezone parsing in ext:parse-time: 00359, Daniel Barlow |
|---|---|
| Next by Date: | Re: Dynamic-extent ahead: 00359, Gerd Moellmann |
| Previous by Thread: | Re: Dynamic-extent aheadi: 00359, Raymond Toy |
| Next by Thread: | Re: Dynamic-extent ahead: 00359, Gerd Moellmann |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |