This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: -frepo works great on egcs-1.1
- To: egcs at cygnus dot com, khan at xraylith dot wisc dot edu
- Subject: Re: -frepo works great on egcs-1.1
- From: mrs at wrs dot com (Mike Stump)
- Date: Sat, 15 Aug 1998 16:26:15 -0700
> To: egcs@cygnus.com
> Date: Sat, 15 Aug 1998 14:26:28 -0500
> From: Mumit Khan <khan@xraylith.wisc.edu>
> Interestingly enough, I can't get -frepo to work on i386-pc-linux-gnu!
I just tried it. Works fine for me. The rpo file is generated, it
comes up undefined the first pass through, when full linking, it
recompiles, and then it links. In the resulting file, it template is
regular global (not link once), as I expect.
I am on i586-pc-linux-gnulibc1, though I don't think that should
matter, with binutils 2.9.
> Mike Stump at one point had asked for testimonial on how -frepo works vs
> explicit instantiation. Now, at least for my own code that makes heavy
> use of STL and expression templates, it works faster and better than
> explicit. Also, coming up with the needed explicit instantiations has
> become too cumbersome even with scripts that generate these from linker
> errors.
Ah, ok, now refresh us on performace against default (link once) on
ELF (linux) v -frepo (once it works for you). If you can doc (FAQ)
some of the performace issues so that people might be able to better
choose how they build... that would be great.
Here is the testcase I used:
template <class T>
int foo(T t) {
return sizeof (t);
}
main() {
return foo(1);
}