Re: Argument passing conventions and optimization

Derk Gwen <derkgwen@HotPOP.com>
31 Oct 2003 23:02:23 -0500

          From comp.compilers

Related articles
Argument passing conventions and optimization ptumati@yahoo.com (pradeep tumati) (2003-10-27)
Re: Argument passing conventions and optimization derkgwen@HotPOP.com (Derk Gwen) (2003-10-31)
Re: Argument passing conventions and optimization fjh@cs.mu.oz.au (Fergus Henderson) (2003-10-31)
Re: Argument passing conventions and optimization marcov@stack.nl (Marco van de Voort) (2003-10-31)
Re: Argument passing conventions and optimization nmm1@cus.cam.ac.uk (2003-11-01)
Re: Argument passing conventions and optimization ptumati@yahoo.com (pradeep tumati) (2003-11-02)
Re: Argument passing conventions and optimization nmm1@cus.cam.ac.uk (2003-11-08)
Re: Argument passing conventions and optimization bobduff@shell01.TheWorld.com (Robert A Duff) (2003-11-08)
[2 later articles]
| List of all articles for this month |

From: Derk Gwen <derkgwen@HotPOP.com>
Newsgroups: comp.compilers
Date: 31 Oct 2003 23:02:23 -0500
Organization: Quick STOP Groceries
References: 03-10-116
Keywords: code, optimize
Posted-Date: 31 Oct 2003 23:02:23 EST

# In general whenever a function calls another function, it passes
# arguments by pushing the values onto the stack. Similarly, when a


Stacks are only necessary for recursive functions; if the language
does not permit recursion, or if the compiler can determine there is
none, variables can be allocated statickally and return addresses can
be stored in fixed locations. This is how some Fortran compilers
worked in the good old days of 24 bit computers.


# My question is: Does any of the known compiler (inter procedural)
# optimizations which are in usage modify the standard argument passing
# mechanism? Do I get a situation where I get two different argument
# passing/ return mechanisms when I compile a program with no
# optimization and Full optimization?


Many have been proposed, but I don't know how many are implemented. Things
like merging caller and callee register allocations. Special cased branch
and link that to minimise memory traffic during the call and return.


--
Derk Gwen http://derkgwen.250free.com/html/index.html


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.