* pe-dll.c (make_one): Do not generate code thunk for DATA
exports. (process_def_file): deduce DATA flag for auto-export sumbols.
This commit is contained in:
parent
f3b6f7c34d
commit
23a87948dd
@ -1,3 +1,9 @@
|
|||||||
|
2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
|
||||||
|
|
||||||
|
* pe-dll.c (make_one): Do not generate code thunk for DATA
|
||||||
|
exports.
|
||||||
|
(process_def_file): deduce DATA flag for auto-export sumbols.
|
||||||
|
|
||||||
2000-10-09 Kazu Hirata <kazu@hxi.com>
|
2000-10-09 Kazu Hirata <kazu@hxi.com>
|
||||||
|
|
||||||
* ld.h: Fix formatting.
|
* ld.h: Fix formatting.
|
||||||
|
12
ld/pe-dll.c
12
ld/pe-dll.c
@ -310,7 +310,12 @@ process_def_file (abfd, info)
|
|||||||
if (*sn == '_')
|
if (*sn == '_')
|
||||||
sn++;
|
sn++;
|
||||||
if (auto_export (pe_def_file, sn))
|
if (auto_export (pe_def_file, sn))
|
||||||
def_file_add_export (pe_def_file, sn, 0, -1);
|
{
|
||||||
|
def_file_export *p;
|
||||||
|
p=def_file_add_export (pe_def_file, sn, 0, -1);
|
||||||
|
/* Fill data flag properly, from dlltool.c */
|
||||||
|
p->flag_data = !(symbols[j]->flags & BSF_FUNCTION);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1405,7 +1410,7 @@ make_one (exp, parent)
|
|||||||
bfd *parent;
|
bfd *parent;
|
||||||
{
|
{
|
||||||
asection *tx, *id7, *id5, *id4, *id6;
|
asection *tx, *id7, *id5, *id4, *id6;
|
||||||
unsigned char *td, *d7, *d5, *d4, *d6 = NULL;
|
unsigned char *td = NULL, *d7, *d5, *d4, *d6 = NULL;
|
||||||
int len;
|
int len;
|
||||||
char *oname;
|
char *oname;
|
||||||
bfd *abfd;
|
bfd *abfd;
|
||||||
@ -1454,6 +1459,8 @@ make_one (exp, parent)
|
|||||||
quick_symbol (abfd, U ("__imp_"), exp->internal_name, "",
|
quick_symbol (abfd, U ("__imp_"), exp->internal_name, "",
|
||||||
id5, BSF_GLOBAL, 0);
|
id5, BSF_GLOBAL, 0);
|
||||||
|
|
||||||
|
if (! exp->flag_data)
|
||||||
|
{
|
||||||
bfd_set_section_size (abfd, tx, jmp_byte_count);
|
bfd_set_section_size (abfd, tx, jmp_byte_count);
|
||||||
td = (unsigned char *) xmalloc (jmp_byte_count);
|
td = (unsigned char *) xmalloc (jmp_byte_count);
|
||||||
tx->contents = td;
|
tx->contents = td;
|
||||||
@ -1473,6 +1480,7 @@ make_one (exp, parent)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
save_relocs (tx);
|
save_relocs (tx);
|
||||||
|
}
|
||||||
|
|
||||||
bfd_set_section_size (abfd, id7, 4);
|
bfd_set_section_size (abfd, id7, 4);
|
||||||
d7 = (unsigned char *) xmalloc (4);
|
d7 = (unsigned char *) xmalloc (4);
|
||||||
|
Loading…
Reference in New Issue
Block a user