Smart linking under UNIX

umh@vax5.cit.cornell.edu
19 Aug 91 01:10:27 EDT

          From comp.compilers

Related articles
Smart linking under UNIX umh@vax5.cit.cornell.edu (1991-08-19)
Re: Smart linking under UNIX mengel@fnal.fnal.gov (Marc Mengel) (1991-08-19)
Re: Smart linking under UNIX schwartz@groucho.cs.psu.edu (1991-08-19)
Re: Smart linking under UNIX sef@kithrup.COM (1991-08-20)
Re: Smart linking under UNIX jones@pyrite.cs.uiowa.edu (1991-08-21)
Re: Smart linking under UNIX rro@debussy.cs.colostate.edu (1991-08-22)
Re: Smart linking under UNIX hyatt@cis.uab.edu (1991-08-22)
[10 later articles]
| List of all articles for this month |

Newsgroups: comp.arch,comp.compilers
From: umh@vax5.cit.cornell.edu
Keywords: linker
Organization: CIT, Cornell University
References: <1991Aug15.205912.6553@sono.uucp> <GLEW.91Aug16145002@pdx007.intel.com>
Date: 19 Aug 91 01:10:27 EDT

In article <GLEW.91Aug16145002@pdx007.intel.com>,
glew@pdx007.intel.com (Andy Glew) writes:
> In the C environment, with parameter pointers all over the place, this
> would require interprocedural analysis. Of course, most people don't
> even do "global" analysis within a procedure to handle this sort of thing.
>
> Separate compilation means that you have to worry about worst case
> aliasing. One thing that I would like to see more of is compilation of
> two (or more) versions of a procedure - one assuming maximum aliasing,
> one assuming minimum aliasing. Which to use could be determined
> statically: the compiler, when it generates a call, would say whether
> the call had potentially aliased parameters or not, and the linker
> would choose the appropriate version of the procedure. This
> information could be propagated down the call tree. Or the information
> could be used dynamically (for really big procedures).


This brings up something I've wondered about. Why do "Standard Unix" linkers
only include entire object files- ie every function inside the object file-
rather than the "smart linking" which is standard on Macs and PCs where only
the actual functions you use in a prticular object file are used? It was my
understanding that Next use a linker which does this smart linking, but that
AIX, SunOS and most other vendors do not.


Maynard Handley
--


Post a followup to this message

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