pld
Prefixed Load Doubleword
Loads a 64-bit value from memory using a 34-bit immediate offset (PC-relative or absolute).
Details
The Prefixed Load Doubleword instruction loads a doubleword from memory into the target register. The effective address is calculated based on the base register and an offset, which can be either a displacement or a sum of registers. The loaded data fills the entire 64-bit target register.
Pseudocode Operation
EA <- (R=1 ? PC : RA|0) + EXTS(D34); RT <- MEM(EA, 8)
Programming Note
The pld instruction is commonly used for loading doubleword data from memory into a register. Ensure the base address and offset are correctly calculated to avoid accessing invalid memory locations. This instruction operates at user privilege level unless specified otherwise.
Example
Encoding
Operands
-
RT
Target Register -
D34
34-bit Displacement -
RA
Base Register -
R
PC-Relative Flag