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

  • %pc points at the branch instruction

  • %npc points at the nop-instruction