Lines Matching refs:instr
52 static inline int create_branch(ppc_inst_t *instr, const u32 *addr,
57 *instr = ppc_inst(0);
67 *instr = ppc_inst(0x48000000 | (flags & 0x3) | (offset & 0x03FFFFFC));
72 int create_cond_branch(ppc_inst_t *instr, const u32 *addr,
75 int patch_instruction(u32 *addr, ppc_inst_t instr);
76 int raw_patch_instruction(u32 *addr, ppc_inst_t instr);
84 static inline int patch_instruction_site(s32 *site, ppc_inst_t instr)
86 return patch_instruction((u32 *)patch_site_addr(site), instr);
105 static inline unsigned int branch_opcode(ppc_inst_t instr)
107 return ppc_inst_primary_opcode(instr) & 0x3F;
110 static inline int instr_is_branch_iform(ppc_inst_t instr)
112 return branch_opcode(instr) == 18;
115 static inline int instr_is_branch_bform(ppc_inst_t instr)
117 return branch_opcode(instr) == 16;
120 int instr_is_relative_branch(ppc_inst_t instr);
121 int instr_is_relative_link_branch(ppc_inst_t instr);
122 unsigned long branch_target(const u32 *instr);
123 int translate_branch(ppc_inst_t *instr, const u32 *dest, const u32 *src);
124 bool is_conditional_branch(ppc_inst_t instr);