This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Question about C++ functinos and __i686.get_pc_thunk.bx
- From: Garrett Kajmowicz <gkajmowi at tbaytel dot net>
- To: gcc-help at gcc dot gnu dot org
- Date: Sat, 30 Apr 2005 21:50:55 -0400
- Subject: Question about C++ functinos and __i686.get_pc_thunk.bx
- Reply-to: gkajmowi at tbaytel dot net
I'm developing an embedded C++ library (found at cxx.uclibx.org). So far,
things are going well. However, I've noticed that functions (even empty
constructors) compiled and linked against my library are several bytes
larger.
In all that follows, I'm referring to gcc 3.3.5 on Linux 2.6.10 Gentoo on AMD
Athlon XP.
I've discovered that all functions compiled and linked against my library
start off with a call to __i686.get_pc_thunk.bx
Now, the call and support instructions are only 14 bytes, but that adds up
quickly. Where is this call comming from and how might I work around it.
Also, what does it do. I've searched through the manual and online and have
foind very little information to go on.
Thank you for your help.
- Garrett Kajmowicz