28.2.69 __builtin_tbladdress
Description
Returns a value that represents the address of an object in program memory. The argument
p
must be the address of an object in an EE
data, PSV or executable memory space; otherwise an error message is produced and the
compilation fails. See the space
attribute in 9.10 Variable Attributes.
Prototype
uint32_t __builtin_tbladdress(const void *p);
Argument
p
- literal address of an object
Return Value
Returns an uint32_t
value that represents the address of an object in
program memory.
Assembler Operators
tbloffset
tblpage
Error Messages
The following error message is produced when this function is used incorrectly:
“Argument to __builtin_tbladdress()
is not the address of an object in
code, psv, or eedata section”.
The argument must be an explicit object address.
For example, if obj
is object in an executable or
read-only section, the following syntax is valid:
uint32_t page = __builtin_tbladdress(&obj);