# Program loading When loading an object into memory, the relative positions of the object’s several segments must be preserved. Additionally, absolute objects must reside at the same virtual address that was used to build them. ## Position-independent objects A position-independent object must be loaded at a virtual address with address alignment equal to the alignment of its largest segment. This ensures the alignment of all the object’s segments. The small data area must be aligned to a 64-byte address boundary. Therefore, position- independent objects that contain a small data area must be loaded at a virtual address aligned to 64 bytes. Note The alignment requirement for position-independent objects might change in future versions of the Hexagon processor. Last Published: Oct 06, 2026 [Previous Topic General registers](https://docs.qualcomm.com/bundle/publicresource/80-N2040-23/topics/process-initialization.md) [Next Topic Object files](https://docs.qualcomm.com/bundle/publicresource/80-N2040-23/topics/object-files.md)