21.48 KEEP

The KEEP directive instructs the assembler to retain named local labels in the symbol table in the object file.


KEEP {label}



is the name of the local label to keep. If label is not specified, all named local labels are kept except register-relative labels.


By default, the only labels that the assembler describes in its output object file are:

  • Exported labels.

  • Labels that are relocated against.

Use KEEP to preserve local labels. This can help when debugging. Kept labels appear in the ARM debuggers and in linker map files.

KEEP cannot preserve register-relative labels or numeric local labels.


label   ADC     r2,r3,r4
        KEEP    label       ; makes label available to debuggers
        ADD     r2,r2,r5
Non-ConfidentialPDF file icon PDF versionARM 100069_0608_00_en
Copyright © 2014–2017 ARM Limited or its affiliates. All rights reserved.