as: D30V-Chars
1
1 9.10.2.3 Special Characters
1 ...........................
1
1 A semicolon (';') can be used anywhere on a line to start a comment that
1 extends to the end of the line.
1
1 If a '#' appears as the first character of a line, the whole line is
1 treated as a comment, but in this case the line could also be a logical
1 line number directive (⇒Comments) or a preprocessor control
1 command (⇒Preprocessing).
1
1 Sub-instructions may be executed in order, in reverse-order, or in
1 parallel. Instructions listed in the standard one-per-line format will
1 be executed sequentially unless you use the '-O' option.
1
1 To specify the executing order, use the following symbols:
1 '->'
1 Sequential with instruction on the left first.
1
1 '<-'
1 Sequential with instruction on the right first.
1
1 '||'
1 Parallel
1
1 The D30V syntax allows either one instruction per line, one
1 instruction per line with the execution symbol, or two instructions per
1 line. For example
1 'abs r2,r3 -> abs r4,r5'
1 Execute these sequentially. The instruction on the right is in the
1 right container and is executed second.
1
1 'abs r2,r3 <- abs r4,r5'
1 Execute these reverse-sequentially. The instruction on the right
1 is in the right container, and is executed first.
1
1 'abs r2,r3 || abs r4,r5'
1 Execute these in parallel.
1
1 'ldw r2,@(r3,r4) ||'
1 'mulx r6,r8,r9'
1 Two-line format. Execute these in parallel.
1
1 'mulx a0,r8,r9'
1 'stw r2,@(r3,r4)'
1 Two-line format. Execute these sequentially unless '-O' option is
1 used. If the '-O' option is used, the assembler will determine if
1 the instructions could be done in parallel (the above two
1 instructions can be done in parallel), and if so, emit them as
1 parallel instructions. The assembler will put them in the proper
1 containers. In the above example, the assembler will put the 'stw'
1 instruction in left container and the 'mulx' instruction in the
1 right container.
1
1 'stw r2,@(r3,r4) ->'
1 'mulx a0,r8,r9'
1 Two-line format. Execute the 'stw' instruction followed by the
1 'mulx' instruction sequentially. The first instruction goes in the
1 left container and the second instruction goes into right
1 container. The assembler will give an error if the machine
1 ordering constraints are violated.
1
1 'stw r2,@(r3,r4) <-'
1 'mulx a0,r8,r9'
1 Same as previous example, except that the 'mulx' instruction is
1 executed before the 'stw' instruction.
1
1 Since '$' has no special meaning, you may use it in symbol names.
1