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.

<strong>TASKING</strong> <strong>VX</strong>-<strong>toolset</strong> <strong>for</strong> <strong>ARM</strong> <strong>User</strong> <strong>Guide</strong>Reserved section• The keyword reserved tells the linker to create an area or section of a given size. The linker will notlocate any other sections in the memory occupied by a reserved section, with some exceptions. Eachreserved section has a name. With the keyword size you can specify a size <strong>for</strong> a given reserved areaor section.group ( ... ){reserved "myreserved" ( size = 2k );}The optional fill field contains a bit pattern that the linker writes to all memory addresses that remainunoccupied during the locate process. The result of the expression, or list of expressions, is used asvalues to write to memory, each in MAU. The first MAU of the fill pattern is always the first MAU in thesection.By default, no sections can overlap with a reserved section.With alloc_allowed=absolute sectionsthat are located at an absolute address due to an absolute group restriction can overlap a reservedsection.The same applies <strong>for</strong> reserved sections with alloc_allowed=ranged set. Sections restrictedto a fixed address range can also overlap a reserved section.With the attributes field you can set the access type of the reserved section. The linker locates thereserved section in its space with the restrictions that follow from the used attributes, r, w or x or a validcombination of them. The allowed attributes are shown in the following table. A value between < and> in the table means this value is set automatically by the linker.Properties set in LSLattributes filledxyesryesrnorx yesrw yesrw norwx yesResulting section propertiesaccess memory content executabler datar scratchr executablerw datarw scratchrw executablegroup ( ... ){reserved "myreserved" ( size = 2k,attributes = rw, fill = 0xaa );}If you do not specify any attributes, the linker will reserve the given number of maus, no matter whattype of memory lies beneath. If you do not specify a fill pattern, no section is generated.The linker creates two labels to mark the begin and end of the section, _lc_ub_name <strong>for</strong> the begin ofthe section and _lc_ue_name <strong>for</strong> the end of the reserved section.842

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

Saved successfully!

Ooh no, something went wrong!