reg2i16_format
struct reg2i16_format reg2i16_format;
switch (ip->reg2i16_format.opcode) {
if (ip->reg2i16_format.immediate == 0)
if (regs->regs[ip->reg2i16_format.rj] +
((unsigned long)ip->reg2i16_format.immediate << 2) == (unsigned long)ip)
insn->reg2i16_format.opcode = OP; \
insn->reg2i16_format.immediate = offset; \
insn->reg2i16_format.rj = rj; \
insn->reg2i16_format.rd = rd; \
insn->reg2i16_format.opcode = jirl_op;
insn->reg2i16_format.immediate = offset;
insn->reg2i16_format.rd = rd;
insn->reg2i16_format.rj = rj;
si = src->reg2i16_format.immediate;
switch (src->reg2i16_format.opcode) {
buf->reg2i16_format.immediate = offset;
src[i].reg2i16_format.opcode != jirl_op) {
imm = insn.reg2i16_format.immediate;
rj = insn.reg2i16_format.rj;
rd = insn.reg2i16_format.rd;
switch (insn.reg2i16_format.opcode) {
rj = ip->reg2i16_format.rj;
rd = ip->reg2i16_format.rd;
si = ip->reg2i16_format.immediate;
switch (ip->reg2i16_format.opcode) {
insn->reg2i16_format.immediate = opr1 & 0xffff;
insn->reg2i16_format.immediate = (opr1 >> 2) & 0xffff;
struct reg2i16_format reg2i16_format;
insn->reg2i16_format.opcode = OP; \
insn->reg2i16_format.immediate = offset; \
insn->reg2i16_format.rj = rj; \
insn->reg2i16_format.rd = rd; \
switch (inst.reg2i16_format.opcode) {
if (inst.reg2i16_format.rd == 0 &&
inst.reg2i16_format.rj == CFI_RA &&
inst.reg2i16_format.immediate == 0) {
} else if (inst.reg2i16_format.rd == CFI_RA) {
} else if (inst.reg2i16_format.rd == CFI_A0 &&
inst.reg2i16_format.immediate == 0) {
} else if (inst.reg2i16_format.rd == 0 &&
inst.reg2i16_format.immediate == 0) {
} else if (inst.reg2i16_format.rd == 0 &&
inst.reg2i16_format.immediate != 0) {
insn->immediate = sign_extend64(inst.reg2i16_format.immediate, 15);
insn->immediate = sign_extend64(inst.reg2i16_format.immediate, 15);