Privileged Instructions
35 PowerISA instructions in this extension - click any row for encoding, pseudocode, and full documentation.
| Mnemonic | Syntax | Format | Summary |
|---|---|---|---|
| attn | attn | X-form | Stops execution and alerts the hardware debugger. |
| copy | copy RA, RB | X-form | Initiates a hardware copy (accelerator) operation. |
| cp_abort | cp_abort | X-form | Aborts a hardware accelerator copy-paste sequence. |
| dcbi | dcbi RA, RB | X-form | Invalidates a cache block (Privileged). |
| dcbtls | dcbtls CT, RA, RB | X-form | Locks a cache line in the L1 cache. |
| hashchkp | hashchkp RA | X-form | Checks the hash value of a memory location against a computed hash. |
| hashstp | hashstp RA | X-form | Privileged version of hash store. |
| hrfid | hrfid | XL-form | Returns from a hypervisor interrupt. |
| mfmsr | mfmsr RT | X-form | Moves the contents of the Machine State Register (MSR) into a general-purpose register. |
| mfpvr | mfpvr RT | X-form | Reads the PVR (Processor ID). |
| msgclr | msgclr RB | X-form | Clears a pending doorbell interrupt (Inter-processor comms). |
| msgclrp | msgclrp RB | X-form | Clears a privileged doorbell interrupt. |
| msgslp | msgslp RB | X-form | Transitions the processor to a sleep state via message. |
| msgsnd | msgsnd RB | X-form | Sends a doorbell interrupt to another processor. |
| msgsndp | msgsndp RB | X-form | Sends a message to other threads on the same processor or sub-processor. |
| msgsndu | msgsndu RB | X-form | Sends a message to other threads in the system. |
| msgsync | msgsync | X-form | Provides an ordering function for stores relative to data accesses by other threads after a Directed Ultravisor Doorbell or Directed Hypervisor Doorbell interrupt. |
| mtmsr | mtmsr RS,L | X-form | Sets the Machine State Register (MSR) based on the contents of a source register and a control bit. |
| mtmsrd | mtmsrd RS,L | X-form | Sets the Machine State Register (MSR) based on the contents of a source register and an L field. |
| paste | paste RA, RB | X-form | Transfers data from the copy buffer to a specified memory location. |
| paste. | paste. RA, RB | X-form | Paste operation that updates CR0 to indicate success/fail. |
| rfid | rfid | XL-form | Returns from an interrupt handler. Restores PC from SRR0 and MSR from SRR1. |
| rfscv | rfscv | XL-form | Returns from a vectored system call. |
| slbia | slbia IH | X-form | Invalidates all Segment Lookaside Buffer entries (OS Management). |
| slbie | slbie RB | X-form | Invalidates an SLB entry. Critical for memory management on Power systems. |
| slbmfee | slbmfee RT, RB | X-form | Reads the ESID part of an SLB entry. |
| slbmfev | slbmfev RT, RB | X-form | Reads software-loaded SLB entries and places the contents of the B, VSID, Ks, Kp, N, L, C, and LP fields into register RT. |
| slbmte | slbmte RS, RB | X-form | Writes an SLB entry (Mapping effective to virtual address). |
| slbsync | slbsync | X-form | Provides an ordering function for the effects of all slbieg and slbiag instructions executed by the thread executing the slbsync instruction. |
| stop | stop | X-form | Stops instruction execution and enters a power-saving state (replaces nap/doze on P9+). |
| tlbia | tlbia | X-form | Invalidates the entire Translation Lookaside Buffer. |
| tlbie | tlbie RB, RS | X-form | Invalidates a TLB entry corresponding to the address in RB. |
| tlbiel | tlbiel RS, RIC, PRS, effR | X-form | Invalidates a TLB entry on the current processor only. |
| tlbsync | tlbsync | X-form | Provides an ordering function for the effects of all tlbie instructions executed by the thread executing the tlbsync instruction. |
| urfid | urfid | XL-form | Returns from an ultravisor interrupt. |