BREAK

 

 

 

 

BREAK

Terminate the Loop and Branch

BREAK

 

 

to an Address (AGU)

 

Operation

Assembler Syntax

 

PC + displacement → PC

BREAK label

 

0 → LFn

 

 

Description

 

 

BREAK label

 

 

Exits the active loop n unconditionally before the active loop counter (LCn) equals one, and clears the active loop flag. The program execution continues at “label.” The displacement, calculated by the assembler and linker, is a two’s complement integer that represents the relative distance from the current PC to the destination label. Some programming rules apply to the use of this instruction. If no loops are enabled, this instruction is undefined.

Status and Conditions that Affect Instruction

Register Address

Bit Name

Description

SR[30:27]

LF[3:0]

Determines which loop is active.

Status and Conditions Changed by Instruction

Register Address

Bit Name

Description

SR[30:27]

LF[3:0]

Clear active loop flag.

Example

break _label

Register/Memory Address

_label (displacement)

PC

SR

Before

$0000 000C

$0000 0014

$40E0 0000

After

$0000 0020

$00E0 0000

Note: The assembler has calculated the displacement $C to increment the program counter from its value at the BREAK ($0000 0014) to its value at _label ($0000 0020). LF3 is cleared by the break.

SC140 DSP Core Reference Manual

A-103

Page 417
Image 417
Freescale Semiconductor SC140 specifications Break label, PC + displacement → PC, → LFn