And Xtensa Processors - Red Hat ENTERPRISE LINUX 3 - USING ID Using Instructions

Using ld, the gnu linker
Hide thumbs Also See for ENTERPRISE LINUX 3 - USING ID:
Table of Contents

Advertisement

Chapter 5. Machine Dependent Features
file when creating the dll. This will affect also the optional created import library. Consider
the following DEF file:
LIBRARY "xyz.dll" BASE=0x61000000
EXPORTS
foo
_foo = foo
The line
_foo = foo
Another method for creating a symbol alias is to create it in the source code using the "weak"
attribute:
void foo () { /* Do something.
void _foo () __attribute__ ((weak, alias ("foo")));
See the gcc manual for more information about attributes and weak symbols.
renaming symbols
Sometimes it is useful to rename exports. For instance, the cygwin kernel does this regularly.
A symbol
DEF file. (This will also affect the import library, if it is created). In the following example:
LIBRARY "xyz.dll" BASE=0x61000000
EXPORTS
_foo = foo
The line
_foo = foo
Note: using a DEF file disables
-export-all-symbols
symbols, then you should list all desired exports in the DEF file, including the symbols that
are not being renamed, and do not use the
the renamed symbols in the DEF file, and use
symbols, then the both the new names and the original names for the the renamed symbols will
be exported. In effect, you'd be aliasing those symbols, not renaming them, which is probably
not what you wanted.
5.9.

and Xtensa Processors

ld
The default
behavior for Xtensa processors is to interpret
ld
explicitly named sections in a specification with a wildcard file will be interleaved when necessary to
keep literal pools within the range of PC-relative load offsets. For example, with the command:
SECTIONS
{
.text : {
*(.literal .text)
}
}
may interleave some of the
ld
that the literal pools are within the range of PC-relative load offsets. A valid interleaving might place
the
sections from an initial group of files followed by the
.literal
files. Then, the
.literal
the files would follow. The non-interleaved order can still be specified as:
SECTIONS
{
maps the symbol
can be exported as
_foo
maps the exported symbol
command line option is used. If, however, you are trying to rename
.literal
sections from the rest of the files and the
to
.
foo
_foo
*/; }
but not as
foo
_foo
foo
the default
auto-export
-export-all-symbols
-export-all-symbols
SECTIONS
and
sections from different object files to ensure
.text
by using special directives in the
to
.
_foo
behavior,
option. If you list only
to handle the other
commands so that lists of
sections of that group of
.text
sections from the rest of
.text
65
unless the

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ENTERPRISE LINUX 3 - USING ID and is the answer not in the manual?

Questions and answers

This manual is also suitable for:

Enterprise linux 3

Table of Contents