Lines Matching full:emit
64 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_fentry_stubs()
65 EMIT(PPC_RAW_NOP()); in bpf_jit_build_fentry_stubs()
67 EMIT(PPC_RAW_MTLR(_R0)); in bpf_jit_build_fentry_stubs()
69 EMIT(PPC_RAW_BRANCH(4 - (long)ctx->idx * 4)); in bpf_jit_build_fentry_stubs()
86 EMIT(PPC_RAW_MFLR(_R11)); in bpf_jit_build_fentry_stubs()
87 EMIT(PPC_RAW_BCL4()); in bpf_jit_build_fentry_stubs()
88 EMIT(PPC_RAW_MFLR(_R12)); in bpf_jit_build_fentry_stubs()
89 EMIT(PPC_RAW_LL(_R12, _R12, -8-SZL)); in bpf_jit_build_fentry_stubs()
90 EMIT(PPC_RAW_MTCTR(_R12)); in bpf_jit_build_fentry_stubs()
91 EMIT(PPC_RAW_MTLR(_R11)); in bpf_jit_build_fentry_stubs()
92 EMIT(PPC_RAW_BCTR()); in bpf_jit_build_fentry_stubs()
470 EMIT(PPC_RAW_STD(_R3, _R1, run_ctx_off + offsetof(struct bpf_tramp_run_ctx, in invoke_bpf_prog()
475 EMIT(PPC_RAW_STW(_R3, _R1, in invoke_bpf_prog()
477 EMIT(PPC_RAW_STW(_R4, _R1, in invoke_bpf_prog()
483 EMIT(PPC_RAW_MR(_R25, _R3)); in invoke_bpf_prog()
484 EMIT(PPC_RAW_ADDI(_R4, _R1, run_ctx_off)); in invoke_bpf_prog()
491 EMIT(PPC_RAW_MR(_R26, _R3)); in invoke_bpf_prog()
497 * Emit a nop to be later patched with conditional branch, once offset is known in invoke_bpf_prog()
499 EMIT(PPC_RAW_CMPLI(_R3, 0)); in invoke_bpf_prog()
501 EMIT(PPC_RAW_NOP()); in invoke_bpf_prog()
504 EMIT(PPC_RAW_ADDI(_R3, _R1, regs_off)); in invoke_bpf_prog()
513 EMIT(PPC_RAW_LL(_R12, _R25, offsetof(struct bpf_prog, bpf_func))); in invoke_bpf_prog()
514 EMIT(PPC_RAW_MTCTR(_R12)); in invoke_bpf_prog()
515 EMIT(PPC_RAW_BCTRL()); in invoke_bpf_prog()
519 EMIT(PPC_RAW_STL(_R3, _R1, retval_off)); in invoke_bpf_prog()
530 EMIT(PPC_RAW_MR(_R3, _R25)); in invoke_bpf_prog()
531 EMIT(PPC_RAW_MR(_R4, _R26)); in invoke_bpf_prog()
532 EMIT(PPC_RAW_ADDI(_R5, _R1, run_ctx_off)); in invoke_bpf_prog()
549 EMIT(PPC_RAW_LI(_R3, 0)); in invoke_bpf_mod_ret()
550 EMIT(PPC_RAW_STL(_R3, _R1, retval_off)); in invoke_bpf_mod_ret()
557 * mod_ret prog stored return value after prog ctx. Emit: in invoke_bpf_mod_ret()
561 EMIT(PPC_RAW_LL(_R3, _R1, retval_off)); in invoke_bpf_mod_ret()
562 EMIT(PPC_RAW_CMPLI(_R3, 0)); in invoke_bpf_mod_ret()
570 EMIT(PPC_RAW_NOP()); in invoke_bpf_mod_ret()
583 EMIT(PPC_RAW_LL(_R3, _R1, func_frame_offset - tailcallcnt_offset)); in bpf_trampoline_setup_tail_call_cnt()
584 EMIT(PPC_RAW_STL(_R3, _R1, -tailcallcnt_offset)); in bpf_trampoline_setup_tail_call_cnt()
587 EMIT(PPC_RAW_LL(_R4, _R1, r4_off)); in bpf_trampoline_setup_tail_call_cnt()
598 EMIT(PPC_RAW_LL(_R3, _R1, -tailcallcnt_offset)); in bpf_trampoline_restore_tail_call_cnt()
599 EMIT(PPC_RAW_STL(_R3, _R1, func_frame_offset - tailcallcnt_offset)); in bpf_trampoline_restore_tail_call_cnt()
602 EMIT(PPC_RAW_STL(_R4, _R1, r4_off)); in bpf_trampoline_restore_tail_call_cnt()
616 EMIT(PPC_RAW_STL(_R3 + i, _R1, regs_off + i * SZL)); in bpf_trampoline_save_args()
618 EMIT(PPC_RAW_LL(_R3, _R1, param_save_area_offset + i * SZL)); in bpf_trampoline_save_args()
619 EMIT(PPC_RAW_STL(_R3, _R1, regs_off + i * SZL)); in bpf_trampoline_save_args()
629 EMIT(PPC_RAW_LL(_R3 + i, _R1, regs_off + i * SZL)); in bpf_trampoline_restore_args_regs()
642 EMIT(PPC_RAW_LL(_R3, _R1, param_save_area_offset + i * SZL)); in bpf_trampoline_restore_args_stack()
643 EMIT(PPC_RAW_STL(_R3, _R1, STACK_FRAME_MIN_SIZE + i * SZL)); in bpf_trampoline_restore_args_stack()
781 EMIT(PPC_RAW_STL(_R0, _R1, PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
783 EMIT(PPC_RAW_STLU(_R1, _R1, -bpf_dummy_frame_size)); in __arch_prepare_bpf_trampoline()
786 EMIT(PPC_RAW_STLU(_R1, _R1, -bpf_frame_size)); in __arch_prepare_bpf_trampoline()
790 EMIT(PPC_RAW_STD(_R2, _R1, 24)); in __arch_prepare_bpf_trampoline()
796 EMIT(PPC_RAW_STL(_R4, _R1, r4_off)); in __arch_prepare_bpf_trampoline()
801 EMIT(PPC_RAW_MFLR(_R3)); in __arch_prepare_bpf_trampoline()
803 EMIT(PPC_RAW_STL(_R3, _R1, alt_lr_off)); in __arch_prepare_bpf_trampoline()
805 EMIT(PPC_RAW_STL(_R3, _R1, bpf_frame_size + PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
813 EMIT(PPC_RAW_LWZ(_R4, _R3, 4)); in __arch_prepare_bpf_trampoline()
814 EMIT(PPC_RAW_SLWI(_R4, _R4, 6)); in __arch_prepare_bpf_trampoline()
815 EMIT(PPC_RAW_SRAWI(_R4, _R4, 6)); in __arch_prepare_bpf_trampoline()
816 EMIT(PPC_RAW_ADD(_R3, _R3, _R4)); in __arch_prepare_bpf_trampoline()
817 EMIT(PPC_RAW_ADDI(_R3, _R3, 4)); in __arch_prepare_bpf_trampoline()
821 EMIT(PPC_RAW_STL(_R3, _R1, ip_off)); in __arch_prepare_bpf_trampoline()
825 EMIT(PPC_RAW_STL(_R3, _R1, bpf_frame_size + PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
828 EMIT(PPC_RAW_LI(_R3, nr_regs)); in __arch_prepare_bpf_trampoline()
829 EMIT(PPC_RAW_STL(_R3, _R1, nregs_off)); in __arch_prepare_bpf_trampoline()
832 EMIT(PPC_RAW_STL(_R25, _R1, nvr_off)); in __arch_prepare_bpf_trampoline()
833 EMIT(PPC_RAW_STL(_R26, _R1, nvr_off + SZL)); in __arch_prepare_bpf_trampoline()
867 EMIT(PPC_RAW_LL(_R3, _R1, bpf_frame_size + PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
868 EMIT(PPC_RAW_MTCTR(_R3)); in __arch_prepare_bpf_trampoline()
879 EMIT(PPC_RAW_LD(_R2, _R1, 24)); in __arch_prepare_bpf_trampoline()
880 EMIT(PPC_RAW_BCTRL()); in __arch_prepare_bpf_trampoline()
885 EMIT(PPC_RAW_STL(_R3, _R1, retval_off)); in __arch_prepare_bpf_trampoline()
893 EMIT(PPC_RAW_NOP()); in __arch_prepare_bpf_trampoline()
928 EMIT(PPC_RAW_LL(_R3, _R1, retval_off)); in __arch_prepare_bpf_trampoline()
931 EMIT(PPC_RAW_LL(_R26, _R1, nvr_off + SZL)); in __arch_prepare_bpf_trampoline()
932 EMIT(PPC_RAW_LL(_R25, _R1, nvr_off)); in __arch_prepare_bpf_trampoline()
936 EMIT(PPC_RAW_LD(_R2, _R1, 24)); in __arch_prepare_bpf_trampoline()
939 EMIT(PPC_RAW_ADDI(_R1, _R1, func_frame_offset)); in __arch_prepare_bpf_trampoline()
940 EMIT(PPC_RAW_LL(_R0, _R1, PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
941 EMIT(PPC_RAW_MTLR(_R0)); in __arch_prepare_bpf_trampoline()
942 EMIT(PPC_RAW_BLR()); in __arch_prepare_bpf_trampoline()
945 EMIT(PPC_RAW_LL(_R0, _R1, alt_lr_off)); in __arch_prepare_bpf_trampoline()
946 EMIT(PPC_RAW_MTLR(_R0)); in __arch_prepare_bpf_trampoline()
947 EMIT(PPC_RAW_ADDI(_R1, _R1, func_frame_offset)); in __arch_prepare_bpf_trampoline()
948 EMIT(PPC_RAW_LL(_R0, _R1, PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
949 EMIT(PPC_RAW_BLR()); in __arch_prepare_bpf_trampoline()
951 EMIT(PPC_RAW_LL(_R0, _R1, bpf_frame_size + PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
952 EMIT(PPC_RAW_MTCTR(_R0)); in __arch_prepare_bpf_trampoline()
953 EMIT(PPC_RAW_ADDI(_R1, _R1, func_frame_offset)); in __arch_prepare_bpf_trampoline()
954 EMIT(PPC_RAW_LL(_R0, _R1, PPC_LR_STKOFF)); in __arch_prepare_bpf_trampoline()
955 EMIT(PPC_RAW_MTLR(_R0)); in __arch_prepare_bpf_trampoline()
956 EMIT(PPC_RAW_BCTR()); in __arch_prepare_bpf_trampoline()