aboutsummaryrefslogtreecommitdiff
path: root/ld/pe-dll.c
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2001-10-19 00:00:55 +0000
committerDJ Delorie <dj@redhat.com>2001-10-19 00:00:55 +0000
commit663dd3780830bfbb264c070a1cfffb0d9aaab33b (patch)
tree715ec31bcdcb2a9faf7e79560ea12e5873d0825e /ld/pe-dll.c
parent6c5108aec9745b56285d00bde80eee7dfeac11ca (diff)
downloadgdb-663dd3780830bfbb264c070a1cfffb0d9aaab33b.zip
gdb-663dd3780830bfbb264c070a1cfffb0d9aaab33b.tar.gz
gdb-663dd3780830bfbb264c070a1cfffb0d9aaab33b.tar.bz2
* pe-dll.c (autofilter_objectlist): Add startup objects
for profiling. (auto-export): Constify char * p. Extract file basename and use strcmp rather than ststr for object lookup.
Diffstat (limited to 'ld/pe-dll.c')
-rw-r--r--ld/pe-dll.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index d635f13..4ca567f 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -241,6 +241,8 @@ static autofilter_entry_type autofilter_objlist[] =
{ "crt2.o", 6 },
{ "dllcrt1.o", 9 },
{ "dllcrt2.o", 9 },
+ { "gcrt1.o", 7 },
+ { "gcrt2.o", 7 },
{ NULL, 0 }
};
@@ -418,7 +420,7 @@ auto_export (abfd, d, n)
if (pe_dll_do_default_excludes)
{
- char * p;
+ const char * p;
int len;
if (pe_dll_extra_pe_debug)
@@ -440,16 +442,16 @@ auto_export (abfd, d, n)
}
/* Next, exclude symbols from certain startup objects. */
- afptr = autofilter_objlist;
+ if (abfd && (p = lbasename (abfd->filename)) )
+ {
+ afptr = autofilter_objlist;
while (afptr->name)
{
- if (abfd &&
- (p = strstr (abfd->filename, afptr->name)) &&
- (*(p + afptr->len - 1) == 0))
+ if ( strcmp (p, afptr->name) == 0 )
return 0;
-
afptr ++;
+ }
}
/* Don't try to blindly exclude all symbols