Search results for: “linkers”
-
Linkers part 20
This will be my last blog posting on linkers for the time being. Tomorrow my blog will return to its usual trivialities. People who are specifically interested in linker information are warned to stop reading with this post. I’ll close the series with a short update on gold, the new linker I’ve been working on.…
-
Linkers part 19
I’ve pretty much run out of linker topics. Unless I think of something new, I’ll make tomorrow’s post be the last one, for a total of 20. __start and __stop Symbols A quick note about another GNU linker extension. If the linker sees a section in the output file which can be part of a…
-
Linkers part 18
Incremental Linking Often a programmer will make change a single source file and recompile and relink the application. A standard linker will need to read all the input objects and libraries in order to regenerate the executable with the change. For a large application, this is a lot of work. If only one input object…
-
Linkers part 17
Warning Symbols The GNU linker supports a weird extension to ELF used to issue warnings when symbols are referenced at link time. This was originally implemented for a.out using a special symbol type. For ELF, I implemented it using a special section name. If you create a section named .gnu.warning.SYMBOL, then if and when the…
-
Linkers part 16
C++ Template Instantiation There is still more C++ fun at link time, though somewhat less related to the linker proper. A C++ program can declare templates, and instantiate them with specific types. Ideally those specific instantiations will only appear once in a program, not once per source file which instantiates the templates. There are a…