5.3.1. Selecting veneer input sections in scatter-loading descriptions
Veneers are used to switch between ARM and Thumb code or to perform a longer program jump than can be specified in a single instruction. See Veneer generation. Use a scatter-loading description file to place linker-generated veneer input sections. At most, one execution region in the scatter-loading description file can have the *(Veneer$$Code) section selector.
If it is safe to do so, the linker places veneer input sections into the region identified by the *(Veneer$$Code) section selector. It might not be possible for a veneer input section to be assigned to the region because of address range problems or execution region size limitations. If the veneer cannot be added to the specified region, it is added to the execution region containing the relocated input section that generated the veneer.
Note
Instances of *(IWV$$Code) in scatter-loading description files from earlier versions of ARM tools are automatically translated into *(Veneer$$Code). Use *(Veneer$$Code) in new descriptions.
*(Veneer$$Code) is ignored when the amount of code in an execution region exceeds 4Mb of Thumb code, 16Mb of Thumb-2 code, and 32Mb of ARM code.