Idle Mode
SPARCv8 processors trigger idle mode in the following cases:
-
Unconditional branch to itself
-
Write to power down register
There are two unconditional branch sequences detected:
Annulled Unconditional Branch To Self
loop: ba,a loop
Non-Annulled Unconditional Branch To Self
loop: ba loop
nop
In the non-annulled case, idle will only be detected if the following conditions hold:
-
Both instructions are on the same page
-
%pcpoints at the branch instruction -
%npcpoints at the nop-instruction