29.12.2014 Views

RealView Compilation Tools Compiler Reference Guide - ARM ...

RealView Compilation Tools Compiler Reference Guide - ARM ...

RealView Compilation Tools Compiler Reference Guide - ARM ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Compiler</strong> Command-line Options<br />

See also<br />

• -Aopt on page 2-2<br />

• -Lopt on page 2-52<br />

• --via=filename on page 2-92.<br />

2.1.110 --split_ldm<br />

This option instructs the compiler to split LDM and STM instructions into two or more LDM<br />

or STM instructions.<br />

When --split_ldm is selected, the maximum number of register transfers for an LDM or<br />

STM instruction is limited to:<br />

• five, for all STMs<br />

• five, for LDMs that do not load the PC<br />

• four, for LDMs that load the PC.<br />

Where register transfers beyond these limits are required, multiple LDM or STM<br />

instructions are used.<br />

Note<br />

This option is deprecated and will be removed in the next release.<br />

Usage<br />

The --split_ldm option can be used to reduce interrupt latency on <strong>ARM</strong> systems that:<br />

• do not have a cache or a write buffer, for example, a cacheless <strong>ARM</strong>7TDMI<br />

• use zero-wait-state, 32-bit memory.<br />

Note<br />

Using --split_ldm increases code size and decreases performance slightly.<br />

Restrictions<br />

• Inline assembler LDM and STM instructions are split by default when --split_ldm is<br />

used. However, the compiler might subsequently recombine the separate<br />

instructions into an LDM or STM.<br />

• VFP FLDM or FSTM instructions are not split when --split_ldm is used.<br />

2-82 Copyright © 2007, 2010 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0348A<br />

Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!