5.2.2. Overview of the syntax of scatter-loading description files
Note
In the BNF definitions in this section, line returns and spaces have been added to improve readability. They are not required in the scatter-loading definition and are ignored if present in the file.
A scatter_description is defined as one or more load_region_description patterns:
Scatter_description ::=
load_region_description+
A load_region_description is defined as a load region name, optionally followed by attributes or size specifiers, and one or more execution region descriptions:
load_region_description ::=
load_region_name (base_address | ("+" offset)) [attributes] [max_size]
"{"
execution_region_description+
"}"
An execution_region_description is defined as an execution region name, a base address specification, optionally followed by attributes or size specifiers, and one or more input section descriptions:
execution_region_description ::=
exec_region_name (base_address | "+" offset) [attribute_list][max_size | "–" length]
"{"
input_section_description*
"}"
An input_section_description is defined as a source module selector pattern optionally followed by input section selectors:
input_section_description ::=
module_select_pattern
[ "(" input_section_selector ( "," input_section_selector )* ")" ]
input_section_selector ::=
("+" input_section_attr | input_section_pattern | input_symbol_pattern)
Figure 5.5 shows the contents and organization of a typical scatter-loading description file.