LOOP/LOOPcc—Loop According to ECX Counter (Continued)
IF (instruction = LOOPNE) OR (instruction = LOOPNZ)
FI;
ELSE (* instruction = LOOP *)
IF (Count 0)
FI;
FI;
IF BranchCond = 1
THEN
EIP EIP + SignExtend(DEST);
IF OperandSize = 16
FI;
IF Itanium System Environment AND PSR.tb THEN IA_32_Exception(Debug);
ELSE
Terminate loop and continue program execution at EIP;
FI;
Flags Affected
None.
Additional Itanium System Environment Exceptions
Itanium Reg Faults NaT Register Consumption Abort.
IA_32_Exception
Protected Mode Exceptions
#GP(0)
Real Address Mode Exceptions
None.
Virtual 8086 Mode Exceptions
None.
Volume 4: Base IA-32 Instruction Reference
THEN
IF (ZF =0 ) AND (Count 0)
THEN BranchCond 1;
ELSE BranchCond 0;
FI;
THEN BranchCond 1;
ELSE BranchCond 0;
THEN
EIP EIP AND 0000FFFFH;
Taken Branch Debug Exception if PSR.tb is 1
If the offset jumped to is beyond the limits of the code segment.
4:277