Output Listings and Error Handling
eld Manual—527255-009
6-71
Error Messages
Cause.
This message indicates a problem with the contents of the specified input
filename, so that
eld
refuses to process the file.
Effect.
Fatal error (
eld
immediately stops without creating an output file).
Recovery.
This is a bug that needs to be reported to HP. Was the specified input file
created by a compilation, or by a previous link step? That would indicate which tool
created the bad file, and therefore had a bug that needs to be fixed.
Cause.
The data in the program or DLL that you are creating is divided into various
data “sections”. Some of the sections are called “GP-relative”, meaning that the data is
to be addressed by adding an offset to the contents of the GP register. A single region
of data is reserved for this purpose, and all the GP-relative data sections need to fit
within it. Some of these GP-relative sections come directly from compilations, because
the compiler decides that the data can be referenced by GP-relative addressing.
There also are tables created by the linker, to be referenced by GP-relative addressing,
related to the number of different symbols to which you have references. Also, if you
used the
-instance_data
option, specifying two data segments, that causes data to
be rearranged in a way that requires more data to fit in the area reserved for GP-
relative addressing. In any case, at most 4 megabytes of data can be in the area
reserved for GP-relative addressing, and your program or DLL has exceeded that.
Effect.
Fatal error (
eld
immediately stops without creating an output file).
Recovery.
You need to make your program or DLL smaller, so that it contains less
data, or makes references to fewer symbols, or perhaps you don’t need to use the
-
instance_data
option (if you specified that option). Or, you might decide to split a
single large DLL into multiple DLLs. Each program and DLL gets its own region of GP-
addressable data.
Cause.
Some of the data in a program or DLL is called “GP-relative”, meaning that it is
to be addressed by adding an offset to the contents of the GP register. A single region
of data is reserved for this purpose, and all the GP-relative data needs to fit within it.
eld
chooses the value for the GP register so that it can reach all the data in this
region, if possible. However, your program or DLL also included a symbol named
1395 <filename>: <procedure name> is in <section name>, which
is not a code section.
1447 <output filename>: the range of data that requires GP-
relative addressing is too large (<number> >= 0x400000).
1448 <output filename>: the value specified for the GP
register, due to the definition of a symbol named __gp, does
not make it possible to reach all the data that requires
GP-relative addressing.
Содержание eld
Страница 4: ......
Страница 8: ...Contents eld Manual 527255 009 iv ...
Страница 12: ...What s New in This Manual eld Manual 527255 009 viii Changes to the 527255 005 Manual ...
Страница 34: ...Introduction to eld eld Manual 527255 009 1 14 Example of Use ...
Страница 54: ...eld Input and Output eld Manual 527255 009 2 20 Using Archives ...
Страница 98: ...Other eld Processing eld Manual 527255 009 4 20 Merging Source RTDUs ...
Страница 242: ...Output Listings and Error Handling eld Manual 527255 009 6 132 Glossary of Errors ...