Skip to main content

IAR Embedded Workbench for Arm 9.70.x

‑‑no_literal_pool

In this section:
Syntax
‑‑no_literal_pool
Description

Use this option for code that should run from a memory address range where read access via the data bus is prohibited.

With the option ‑‑no_literal_pool, the assembler uses the MOV32 pseudo-instruction instead of using a literal pool for LDR. Note that other instructions can still cause read access via the data bus.

The option also affects the automatic library selection performed by the linker. An IAR-specific ELF attribute is used for determining whether libraries compiled with the option ‑‑no_literal_pool should be used.

The option ‑‑no_literal_pool is only allowed for Armv6-M and Armv7 compatible cores (includes Armv8-M, Armv8.1-M, Armv8-A and Armv8-R cores).

Note

In 64-bit mode, this option has no effect.

See also

‑‑no_literal_pool (compiler option) and ‑‑no_literal_pool (linker option).

Caution

To set this option, use Project>Options>Assembler>Extra Options.