SLAA534A June 2013 – June 2020
The program header contains the following fields.
p_type
The MSP430 defines no processor-specific segment types for the p_type field in the program header.
p_vaddr, p_paddr
The MSP430 does not currently have virtual addressing. Both the p_vaddr and p_paddr fields indicate the execution address of the segment. Segments that are loaded at one address and copied to another to execute are represented in the object file by two distinct segments: a load-image segment containing the segment's code or data whose address fields refer to the load address; and an uninitialized run-image segment whose address fields refer to the run address. The application is responsible for copying the contents of the load image to the run address at the appropriate time.
p_flags
There are no processor-specific segment flags defined for MSP430.
p_align
As described in the System V ABI, loadable segments are aligned in the file such that their p_vaddr (address in memory) and p_offset (offset in the file) are congruent, modulo p_align. In systems with virtual memory, p_align generally specifies the page size. Unless specified for a specific platform, for the MSP430 the meaning and setting of p_align is unspecified.