home bbs files messages ]

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