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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>TASKING</strong> <strong>VX</strong>-<strong>toolset</strong> <strong>for</strong> <strong>ARM</strong> <strong>User</strong> <strong>Guide</strong>symbol in a handler, the symbol is assigned the vector number. If the symbol was already assigned avector number, a warning is issued.The fill argument sets the default contents of vectors. If nothing is specified <strong>for</strong> a vector, this settingis used. See below. When no default is provided, empty vectors may be used to locate large vectorhandlers and other sections. Only one fill argument is allowed.The vector field defines the content of vector with the number specified by id. If a range is specified<strong>for</strong> id ([p..q,s..t]) all vectors in the ranges (inclusive) are defined the same way.With fill=symbol_name, the vector must jump to this symbol. If the section in which the symbol isdefined fits in the vector table (size may be >m), locate the section at the location of the vector.Otherwise, insert code to jump to the symbol's value. A template interrupt handler section name +symbol name <strong>for</strong> the target code must be supplied in the LSL file.fill=[value(s)], fills the vector with the specified MAU values.With fill=loop the vector jumps to itself. With the optional [offset] you can specify an offset from thevector table entry.When the keyword optional is set on a vector specification with a symbol value and the symbol isnot found, no error is reported. A default fill value is used if the symbol was not found. With other valuesthe attribute has no effect.Reserved address ranges• The reserved keyword specifies to reserve a part of an address space even if not all of the range iscovered by memory. See also the reserved keyword in Section 16.8.3, Creating or Modifying SpecialSections.Start address• The start_address keyword specifies the start address <strong>for</strong> the position where the C startup code islocated.When a processor is reset, it initializes its program counter to a certain start address, sometimescalled the reset vector. In the architecture definition, you must specify this start address in the correctaddress space in combination with the name of the label in the application code which must be locatedhere.The run_addr argument specifies the start address (reset vector). If the core starts executing usingan entry from a vector table, and directly jumps to the start label, you should omit this argument.The symbol argument specifies the name of the label in the application code that should be locatedat the specified start address.The symbol argument is required.The linker will resolve the start symboland use its value after locating <strong>for</strong> the start address field in IEEE-695 files and Intel Hex files. If youalso specified the run_addr argument, the start symbol (label) must point to a section. The linkerlocates this section such that the start symbol ends up on the start address.space space_name{id = 1;mau = 8;align = 8;824

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

Saved successfully!

Ooh no, something went wrong!