Example: Redirecting Sections
Normally, the link-editor copies input sections to the output object, creating
output sections with the same names as the input. The
LOAD_SEGMENT directive allows the use of
MATCH and MATCHREF to match sections
by name, and optionally to redirect them to differently named output sections.
The following mapfile redirects all non-writable allocable
sections with a name staring with the string ".appXtext.", and
redirects each section to an output section named by replacing this prefix with
".text.".
$mapfile_version 2
LOAD_SEGMENT text {
ASSIGN_SECTION apptext {
IS_NAME = MATCH(r/^\.appXtext\.(.*)$/);
FLAGS = ALLOC !WRITE;
OUTPUT_SECTION {
NAME = MATCHREF(/.text.${n1}/);
};
};
};