| Nostub Linking Mode

Previous | Linking Modes of the TIGCC Linker | Next

If this mode is activated using the _nostub control symbol, execution will start at the very beginning of the program. The exact entry point depends on the order of the object files as passed to the linker as well as the order of the sections inside an object file. Because of this insecurity, this mode should never be used in new programs. Programs written in assembly should define a small startup section including a jump to the actual main function and use TIGCC-native mode instead. If the main function follows immediately, the jump can even be optimized away by the linker.
If a startup section is defined in nostub mode, the linker emits a warning and switches to TIGCC-native mode. This ensures that nostub mode really means that no stub is added to the program.