3.2. Read-only position independence

A program is Read-Only Position-Independent (ROPI) if all its read-only segments are position independent.

An ROPI segment is often Position-Independent Code (PIC), but could be read-only data, or a combination of PIC and read-only data.


ROPI does not form part of the AAPCS, because it is not supported for C++. However, you can compile your C code or assembler code for ROPI by using the compiler or assembler option --apcs /ropi.

Select the ROPI option to avoid committing yourself to loading your code in a particular location in memory. This is particularly useful for routines that are:

This section includes:

Copyright © 2002-2006 ARM Limited. All rights reserved.ARM DUI 0203G