S3C2440A RISC MICROPROCESSOR ARM INSTRUCTION SET
3-55
ASSEMBLER SYNTAX
<LDC|STC>{cond}{L} p#,cd,<Address>
LDC Load from m emory to coprocessor
STC Store from coprocessor to m emory
{L} When present perform long transfer (N=1) , otherwise perform short transfer (N=0)
{cond} Two character condition mnemonic. See Table 3-2..
p# The unique num ber of the required coprocessor
cd An expression evaluating to a valid coprocessor register number that is placed in the
CRd field
<Address> can be:
1 An ex pression which generates an address:
The assembler will attempt to generate an instruction using the PC as a base and a
corrected immediate offset to address the location given by evaluating the expression.
This will be a PC relative, pre-indexed address. If the address is out of range, an error
will be generated
2 A pr e-indexed addressing specification:
[Rn] offset of zero
[Rn,<#expression>]{!} offset of <expression> bytes
3 A pos t-indexed addressing specification:
[Rn],<#expression offset of <expression> bytes
{!} write back the bas e register (set the W bit) if! is present
Rn is an expression evaluating to a valid
ARM920T register number.
NOTES
If Rn is R15, the assembler will subtract 8 from the offset value to allow for ARM920T pipelining.
EXAMPLES
LDC p1,c2,table ; Load c2 of coproc 1 from address
; table, us ing a PC relative address.
STCEQL p2,c3,[R5,#24]! ; Conditionally store c3 of coproc 2
; into an addr ess 24 bytes up from R5,
; write this address back to R5, and use
; long tr ansfer option (probably to store multiple words).
NOTES
Although the address offset is expressed in bytes, the instruction offset field is in words. The ass embler
will adjust the offset appropriately.