Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.lang.asm.x86    |    Ahh, the lost art of x86 assembly    |    4,675 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 3,735 of 4,675    |
|    Bernhard Schornak to R.Wieser    |
|    Re: Locals, parameters, callee-save regi    |
|    02 Jan 19 15:11:19    |
      From: schornak@nospicedham.web.de              R.Wieser wrote:                     > Bernard,       >       >>> Though, whats that about *arguments* (also referred to as parameters?)       >>> and the maximum number of them ?       >       > I have zero intention to dig into something like that for a simple "what is       > that stored count good for" question. Sorry 'bout that.       >       > It must be really complex if you think that a few words here cannot explain       > it though ....                     Sorry, but I think the pictures shown in my blog answer all of       the above questions. (And, as a matter of fact, the only limit       for pushed or moved registers, parameters and arguments is the       size of your stack - what the heck is wrong with that?)                     >>> Thats already handled by the RET (or by the caller).       >       >> Is it?       >       > Isn't it ?                     Not in the context of the text I replied to. The RET loads the       current stack element into rIP and adds 2, 4 or 8 to rSP. What       else do you think the RET is doing?                     >> BTW: "The Caller" probably is another function written by you... ;)       >       > Even if so, what about it ?                     Nothing. I just told you that the anonymous caller is yourself       in almost all cases (except you provide a function library).                     >> No. It wastes 1/7th (1/15th) of the available register set.       >       > Really ? Nice trivia.       >       > In short: You have answered none of the questions I asked, nor have you       > responded to any of he problems I mentioned. Any reason for that ?                     It's no trivia on a processor with just seven registers if you       abuse one of them to store data which *already are present* in       another register, *forcing yourself* to reload frequently used       data you could have stored in that register. It's not just the       waste of resources, it is the fact that you deprive *yourself*       of an important opportunity to speed up your code.              --------------------------------------------------------------              I replied to the text I quoted, and answered all questions (at       least I think I did) more or less extensive. What I can see is       that you posted an incomprehensible answer to your own text as       replacement for my (valid!) answer, and it's completely out of       context and does not address your question "how many arguments       could one PUSH onto the stack" at all. If you want to know the       answer to any question, you definitely *have* to dig into that       matter if you want to learn something about it.                     Greetings from Augsburg              Bernhard Schornak              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca