+2003-01-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ldfile.c: Fix comment typos.
+ * ldlang.c: Likewise.
+ * mri.c: Likewise.
+ * pe-dll.c: Likewise.
+
2003-01-01 Daniel Jacobowitz <drow@mvista.com>
Suggested by Manfred Hollstein <manfred.h@gmx.net>:
and ldver.texi.
* Makefile.in: Regenerated.
-2002-12-24 Dmitry Diky <diwil@mail.ru>
+2002-12-24 Dmitry Diky <diwil@mail.ru>
* Makefile.am: Add msp430 target.
* configure.tgt: Likewise.
or prefix it with a -l etc.
We can be supplied with requests for input files more than once;
- they may, for example be split over serveral lines like foo.o(.text)
+ they may, for example be split over several lines like foo.o(.text)
foo.o(.data) etc, so when asked for a file we check that we haven't
got it already so we don't duplicate the bfd. */
if (section->alignment_power > output->bfd_section->alignment_power)
output->bfd_section->alignment_power = section->alignment_power;
- /* If supplied an aligment, then force it. */
+ /* If supplied an alignment, then force it. */
if (output->section_alignment != -1)
output->bfd_section->alignment_power = output->section_alignment;
*dest = 0;
}
-/* Remove the first occurance of needle (if any) in haystack
+/* Remove the first occurrence of needle (if any) in haystack
from haystack. */
static void
}
}
-/* Open input files and attatch to output sections. */
+/* Open input files and attach to output sections. */
static void
map_input_to_output_sections (s, target, output_section_statement)
{
if (s->output_section == (asection *) NULL)
{
- /* This section of the file is not attatched, root
+ /* This section of the file is not attached, root
around for a sensible place for it to go. */
if (file->just_syms_flag)
code modifications).
2. This is done completely in bounds of the PE specification (to be fair,
- there's a place where it pokes nose out of, but in practise it works).
+ there's a place where it pokes nose out of, but in practice it works).
So, resulting module can be used with any other PE compiler/linker.
3. Auto-import is fully compatible with standard import method and they
The obvious and only way to get rid of dllimport insanity is to make client
access variable directly in the DLL, bypassing extra dereference. I.e.,
- whenever client contains someting like
+ whenever client contains something like
mov dll_var,%eax,
DLL. The aim is to make OS loader do so, and than make ld help with that.
Import section of PE made following way: there's a vector of structures
each describing imports from particular DLL. Each such structure points
- to two other parellel vectors: one holding imported names, and one which
+ to two other parallel vectors: one holding imported names, and one which
will hold address of corresponding imported name. So, the solution is
de-vectorize these structures, making import locations be sparse and
pointing directly into code. Before continuing, it is worth a note that,
above: PE specification rambles that name vector (OriginalFirstThunk)
should run in parallel with addresses vector (FirstThunk), i.e. that they
should have same number of elements and terminated with zero. We violate
- this, since FirstThunk points directly into machine code. But in practise,
+ this, since FirstThunk points directly into machine code. But in practice,
OS loader implemented the sane way: it goes thru OriginalFirstThunk and
puts addresses to FirstThunk, not something else. It once again should be
noted that dll and symbol name structures are reused across fixup entries
in windows9x kernel32.dll, so if you use it, you have two
IMAGE_IMPORT_DESCRIPTORS for kernel32.dll). Yet other question is whether
referencing the same PE structures several times is valid. The answer is why
- not, prohibitting that (detecting violation) would require more work on
+ not, prohibiting that (detecting violation) would require more work on
behalf of loader than not doing it.
See also: ld/emultempl/pe.em. */
imp = def_file_add_import (pe_def_file, erva + name_rva,
dll_name, i, 0);
- /* Mark symbole type. */
+ /* Mark symbol type. */
imp->data = is_data;
if (pe_dll_extra_pe_debug)