BRANCH_SET_LINK
op_callback_addr, BRANCH_SET_LINK);
emulate_step_addr, BRANCH_SET_LINK);
patch_branch_site(site, (u64)&kvm_flush_link_stack, BRANCH_SET_LINK);
patch_branch_site(site2, (u64)&kvm_flush_link_stack, BRANCH_SET_LINK);
patch_branch_site(site, (u64)&flush_branch_caches, BRANCH_SET_LINK);
err = patch_branch(site, _func, BRANCH_SET_LINK);
err = patch_branch(site, _tramp, BRANCH_SET_LINK);
create_branch(&op, (u32 *)ip, addr, link ? BRANCH_SET_LINK : 0);
if (patch_branch(ip, tramp, BRANCH_SET_LINK)) {
if (patch_branch(ip, tramp, BRANCH_SET_LINK)) {
create_branch(&op, (u32 *)ip, addr, link ? BRANCH_SET_LINK : 0);
if (patch_branch((u32 *)ip, addr, BRANCH_SET_LINK)) {
if (patch_branch((u32 *)ip, tramp, BRANCH_SET_LINK)) {
return instr_is_relative_branch(instr) && (ppc_inst_val(instr) & BRANCH_SET_LINK);
patch_branch(dest + 1, (unsigned long)fallback, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr + 3, BRANCH_SET_LINK);
create_branch(&instr, iptr, dest, BRANCH_SET_LINK);
flags = 0x3ff000 | BRANCH_SET_LINK;
create_branch(&instr, p, addr, BRANCH_SET_LINK);
create_cond_branch(&instr, p, addr, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr - 0x100, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr - 0x2000000, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr - 0x2000004, BRANCH_SET_LINK);
err = create_branch(&instr, iptr, addr + 0x2000000, BRANCH_SET_LINK);
branch_flags = old_t == BPF_MOD_CALL ? BRANCH_SET_LINK : 0;
branch_flags = new_t == BPF_MOD_CALL ? BRANCH_SET_LINK : 0;
BRANCH_SET_LINK)) {
patch_branch(vector, target, BRANCH_SET_LINK);
patch_branch(vector, target, BRANCH_SET_LINK);