Skip to content

Latest commit

 

History

History
46 lines (37 loc) · 961 Bytes

File metadata and controls

46 lines (37 loc) · 961 Bytes

th.lrh

Synopsis

Load indexed half-word.

Mnemonic

th.lrh rd, rs1, rs2, imm2

Encoding
{reg:[
    { bits:  7, name: 0xb, attr: ['custom-0, 32 bit'] },
    { bits:  5, name: 'rd' },
    { bits:  3, name: 0x4, attr: ['Mem-Load'] },
    { bits:  5, name: 'rs1' },
    { bits:  5, name: 'rs2' },
    { bits:  2, name: 'imm2' },
    { bits:  5, name: 0x04 },
]}
Description

This instruction loads a sign extended 16-bit value into the GP register rd from the address rs1 + (rs2 << imm2).

Operation
addr := rs1 + (rs2 << imm2)
rd := sign_extend(mem[addr+1:addr])
Permission

This instruction can be executed in all privilege levels.

Exceptions

This instruction triggers the same exceptions that a corresponding LH instruction would trigger.

Included in
Extension

XTheadMemIdx ([xtheadmemidx])