13.07.2015 Views

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Linker Script Language (LSL)For example, to select the code sections referenced from foo1:group refgrp (ordered, contiguous, run_addr=mem:ext_c){select ref_tree "foo1" (attributes=+x);}If section foo1 references foo2 and foo2 references foo3, then all these sections are selected bythe selection shown above.Locating a groupgroup group_name ( group_specifications ){section_statements}With the group_specifications you actually define how the linker must locate the group. You canroughly define three things: 1) assign properties to the group like alignment and read/write attributes, 2)define the mutual order in the address space <strong>for</strong> sections in the group and 3) restrict the possible addresses<strong>for</strong> the sections in a group.The linker creates labels that allow you to refer to the begin and end address of a group from within theapplication software. Labels _lc_gb_group_name and _lc_ge_group_name mark the begin and endof the group respectively, where the begin is the lowest address used within this group and the end is thehighest address used. Notice that a group not necessarily occupies all memory between begin and endaddress. The given label refers to where the section is located at run-time (versus load-time).1. Assign properties to the group like alignment and read/write attributes.These properties are assigned to all sections in the group (and subgroups) and override the attributesof the input sections.• The align field tells the linker to align all sections in the group and the group as a whole accordingto the align value. By default the linker uses the largest alignment constraint of either the inputsections or the alignment of the address space.• The attributes field tells the linker to assign one or more attributes to all sections in the group.This overrules the default attributes. By default the linker uses the attributes of the input sections.You can set the r, w, or rw attributes and you can switch between the b and s attributes.• The copy field tells the linker to locate a read-only section in RAM and generate a ROM copy anda copy action in the copy table. This property makes the sections in the group writable which causesthe linker to generate ROM copies <strong>for</strong> the sections.• The effect of the nocopy field is the opposite of the copy field. It prevents the linker from generatingROM copies of the selected sections.2. Define the mutual order of the sections in the group.By default, a group is unrestricted which means that the linker has total freedom to place the sectionsof the group in the address space.837

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!