# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# PIC24FJ64GA004 - Programmers Reference Manual

- 1
- 2
…
- 474
- 475
- 476
- 477
- 478
…
- 501
- 502

16-bit MCU and DSC Programmer’s Reference Manual
DS70157F-page 476 © 2005-2011 Microchip Technology Inc.
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:
unsigned long page = _ _builtin_tbladdress(&obj);
__builtin_tbloffset
Description:
Returns the table page offset of the object whose address is given as a parameter. 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
Section 2.3.1 “Specifying Attributes of Variables” of the “MPLAB
®
C Compiler for PIC24
MCUs and dsPIC
®
DSCs User’s Guide” (DS51284).
Prototype:
unsigned int __builtin_tbloffset(const void *p);
Argument:
p object address
Return Value:
Returns the table page number offset of the object whose address is given as a parameter.
Assembler Operator / Machine Instruction:
tbloffset
Error Messages:
The following error message is produced when this function is used incorrectly:
“Argument to _ _builtin_tbloffset() 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:
unsigned page = _ _builtin_tbloffset(&obj);
__builtin_tbladdress

- 1
- 2
…
- 474
- 475
- 476
- 477
- 478
…
- 501
- 502