Date: Sat, 12 Apr 2003 09:30:27 +0200 From: Gianmarco Giovannelli <gmarco@scotty.masternet.it> To: "M. Warner Losh" <imp@bsdimp.com> Cc: hackers@freebsd.org Subject: Re: gcc iussue or ... ? Message-ID: <5.2.0.9.2.20030412092523.019de658@194.184.65.7> In-Reply-To: <20030412.003411.28085408.imp@bsdimp.com> References: <5.2.0.9.2.20030412080941.016d0978@194.184.65.7> <5.2.0.9.2.20030411223601.053eaeb8@194.184.65.7> <20030411.230438.53067150.imp@bsdimp.com> <5.2.0.9.2.20030412080941.016d0978@194.184.65.7>
next in thread | previous in thread | raw e-mail | index | archive | help
At 12/04/2003, M. Warner Losh wrote:
>OK. Looks like you are creating an array of PacketReader objects. It
>looks like this array has a non-default constructor for its buffer
>object (hard to tell for sure, but it appears that way). This is
>causing it to wind up in the data section.
>
>I'm not sure why other systems aren't resulting in this. That seems
>odd to me.
To me too...
Perhaps a private optimization of the Linux folks on their compiler (but it
is strange it is the same on a lot of Linux distro, like debian, rh ...)
OpenBSD 3.1 (gcc version 2.95.3 20010125 (prerelease)) acts like FreeBSD.
Perhaps you should know if NetBSD is like the other *BSD or it is in the
other way.
>Better if you hack CArray to have, instead of its LB intearnalArray[c]
>a LB *internalArray and have it new/delete in its ctor/dtor. That
>likely would reduce the size a *LOT*.
>
>template <const int c, class LB> CArray<c, LB>::CArray(std::string s):
> maxxx(c), error(0), arrayName(s), fn(NULL)
>{
> internalArray = new LB[c];
>}
>
>But using a template for this is code-space wasteful since you get a
>separate class generated for each size of the array that you want to
>instantiate.
Thanks Warner for your tips ... I'll forward immediately to developers team
of the emulator to see if we can arrange a viable solutions of this problem.
Thanks very much again.
Best Regards,
Gianmarco Giovannelli , "Unix expert since yesterday"
http://www.gufi.org/~gmarco
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5.2.0.9.2.20030412092523.019de658>
