pld

Prefixed Load Doubleword

pld RT, D34(RA), R

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

pld r3, label@pcrel(0), 1

Encoding

Binary Layout
1
0
2
6
R
8
0
9
D0
14
57
32
RT
38
RA
43
D1
48
 
Format MLS:D-form
Opcode 0x06000000
Extension Prefixed

Operands

  • RT
    Target Register
  • D34
    34-bit Displacement
  • RA
    Base Register
  • R
    PC-Relative Flag