Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: "Ralf Habacker" To: , Subject: RE: [PATCH] exclude runtime-pseudo-reloc symbols from auto-export Date: Sat, 21 Dec 2002 20:26:14 +0100 Message-ID: <012401c2a926$d3d57bb0$0a1c440a@BRAMSCHE> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <20021221171952.GA22113@redhat.com> >> > >What about putting such symbols in another named text section, so that > >ld would ignore them ? > > I don't see how you could do that since the symbol is associated with an > existing place in memory. We could put the whole function in a > different segment I had in mind something like this #define NO_EXPORT_TEXT __attribute__((section(".text_no_export"))) #define NO_EXPORT_DATA __attribute__((section(".data_no_export"))) but this need some additional efforts in the ld source. > but that's not the kind of solution I was thinking of. > > I was thinking that there might be an unused attribute that could be > pressed into service as a "don't auto export" (doesn't linux/elf have > something like this?) or that there was a way to name the symbol in some > way that wasn't easily available from a C program, like putting a "." in > the name with an asm alias. The weak attribute does not have any effect for at least gcc version 2.95.3-5 (cygwin special) and I can't see any other attribute, which could be used from http://gcc.gnu.org/onlinedocs/gcc-3.2/gcc/Function-Attributes.html#Function%20At tributes Perhaps somebody else could see something usefull or the gcc could be patched to uses the weak attribute ??? Ralf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/