| /kernel/linux/linux-5.10/arch/riscv/net/ |
| D | bpf_jit_comp32.c | 117 emit(rv_lui(rd, upper), ctx); in emit_imm() 118 emit(rv_addi(rd, rd, lower), ctx); in emit_imm() 120 emit(rv_addi(rd, RV_REG_ZERO, lower), ctx); in emit_imm() 126 /* Emit immediate into lower bits. */ in emit_imm32() 131 emit(rv_addi(hi(rd), RV_REG_ZERO, 0), ctx); in emit_imm32() 133 emit(rv_addi(hi(rd), RV_REG_ZERO, -1), ctx); in emit_imm32() 150 emit(rv_addi(RV_REG_A0, lo(r0), 0), ctx); in __build_epilogue() 151 emit(rv_addi(RV_REG_A1, hi(r0), 0), ctx); in __build_epilogue() 155 emit(rv_lw(RV_REG_RA, stack_adjust - 4, RV_REG_SP), ctx); in __build_epilogue() 156 emit(rv_lw(RV_REG_FP, stack_adjust - 8, RV_REG_SP), ctx); in __build_epilogue() [all …]
|
| D | bpf_jit_comp64.c | 215 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc() 218 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 221 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 224 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 227 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 230 emit(rv_bne(rd, rs, rvoff >> 1), ctx); in emit_bcc() 233 emit(rv_blt(rs, rd, rvoff >> 1), ctx); in emit_bcc() 236 emit(rv_blt(rd, rs, rvoff >> 1), ctx); in emit_bcc() 239 emit(rv_bge(rd, rs, rvoff >> 1), ctx); in emit_bcc() 242 emit(rv_bge(rs, rd, rvoff >> 1), ctx); in emit_bcc() [all …]
|
| /kernel/linux/linux-6.6/arch/riscv/net/ |
| D | bpf_jit_comp32.c | 117 emit(rv_lui(rd, upper), ctx); in emit_imm() 118 emit(rv_addi(rd, rd, lower), ctx); in emit_imm() 120 emit(rv_addi(rd, RV_REG_ZERO, lower), ctx); in emit_imm() 126 /* Emit immediate into lower bits. */ in emit_imm32() 131 emit(rv_addi(hi(rd), RV_REG_ZERO, 0), ctx); in emit_imm32() 133 emit(rv_addi(hi(rd), RV_REG_ZERO, -1), ctx); in emit_imm32() 150 emit(rv_addi(RV_REG_A0, lo(r0), 0), ctx); in __build_epilogue() 151 emit(rv_addi(RV_REG_A1, hi(r0), 0), ctx); in __build_epilogue() 155 emit(rv_lw(RV_REG_RA, stack_adjust - 4, RV_REG_SP), ctx); in __build_epilogue() 156 emit(rv_lw(RV_REG_FP, stack_adjust - 8, RV_REG_SP), ctx); in __build_epilogue() [all …]
|
| D | bpf_jit_comp64.c | 144 /* Emit fixed-length instructions for address */ 161 emit(rv_auipc(rd, upper), ctx); in emit_addr() 162 emit(rv_addi(rd, rd, lower), ctx); in emit_addr() 166 /* Emit variable-length instructions for 32-bit and 64-bit imm */ 259 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc() 262 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 265 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 268 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 271 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 274 emit(rv_bne(rd, rs, rvoff >> 1), ctx); in emit_bcc() [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/net/ |
| D | bpf_jit_comp32.c | 36 #define PPC_EX32(r, i) EMIT(PPC_RAW_LI((r), (i) < 0 ? -1 : 0)) 132 EMIT(PPC_RAW_LI(_R4, 0)); in bpf_jit_build_prologue() 134 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 139 EMIT(PPC_RAW_STWU(_R1, _R1, -BPF_PPC_STACKFRAME(ctx))); in bpf_jit_build_prologue() 142 EMIT(PPC_RAW_STW(_R4, _R1, bpf_jit_stack_offsetof(ctx, BPF_PPC_TC))); in bpf_jit_build_prologue() 145 EMIT(PPC_RAW_MR(bpf_to_ppc(BPF_REG_1), _R3)); in bpf_jit_build_prologue() 146 EMIT(PPC_RAW_LI(bpf_to_ppc(BPF_REG_1) - 1, 0)); in bpf_jit_build_prologue() 153 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue() 160 EMIT(PPC_RAW_STW(i, _R1, bpf_jit_stack_offsetof(ctx, i))); in bpf_jit_build_prologue() 164 EMIT(PPC_RAW_LI(bpf_to_ppc(BPF_REG_FP) - 1, 0)); in bpf_jit_build_prologue() [all …]
|
| D | bpf_jit_comp64.c | 131 EMIT(PPC_RAW_LD(_R2, _R13, offsetof(struct paca_struct, kernel_toc))); in bpf_jit_build_prologue() 140 EMIT(PPC_RAW_LI(bpf_to_ppc(TMP_REG_1), 0)); in bpf_jit_build_prologue() 142 EMIT(PPC_RAW_STD(bpf_to_ppc(TMP_REG_1), _R1, -(BPF_PPC_STACK_SAVE + 8))); in bpf_jit_build_prologue() 144 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 145 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 154 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue() 155 EMIT(PPC_RAW_STD(_R0, _R1, PPC_LR_STKOFF)); in bpf_jit_build_prologue() 158 EMIT(PPC_RAW_STDU(_R1, _R1, -(BPF_PPC_STACKFRAME + ctx->stack_size))); in bpf_jit_build_prologue() 168 EMIT(PPC_RAW_STD(bpf_to_ppc(i), _R1, bpf_jit_stack_offsetof(ctx, bpf_to_ppc(i)))); in bpf_jit_build_prologue() 172 EMIT(PPC_RAW_ADDI(bpf_to_ppc(BPF_REG_FP), _R1, in bpf_jit_build_prologue() [all …]
|
| D | bpf_jit.h | 26 #define EMIT(instr) PLANT_INSTR(image, ctx->idx, instr) macro 36 EMIT(PPC_RAW_BRANCH(offset)); \ 40 #define PPC_BL(dest) EMIT(PPC_RAW_BL((dest) - (unsigned long)(image + ctx->idx))) 50 EMIT(PPC_INST_BRANCH_COND | (((cond) & 0x3ff) << 16) | (offset & 0xfffc)); \ 57 EMIT(PPC_RAW_LI(d, i)); \ 59 EMIT(PPC_RAW_LIS(d, IMM_H(i))); \ 61 EMIT(PPC_RAW_ORI(d, d, IMM_L(i))); \ 71 EMIT(PPC_RAW_LI(d, ((uintptr_t)(i) >> 32) & \ 74 EMIT(PPC_RAW_LIS(d, ((uintptr_t)(i) >> 48))); \ 76 EMIT(PPC_RAW_ORI(d, d, \ [all …]
|
| /kernel/linux/linux-6.6/arch/mips/net/ |
| D | bpf_jit_comp32.c | 178 emit(ctx, addiu, hi(dst), MIPS_R_ZERO, -1); in emit_mov_se_i64() 180 emit(ctx, move, hi(dst), MIPS_R_ZERO); in emit_mov_se_i64() 188 emit(ctx, move, hi(dst), MIPS_R_ZERO); in emit_zext_ver() 197 emit(ctx, nop); in emit_load_delay() 228 emit(ctx, addu, lo(dst), lo(dst), src); in emit_alu_i64() 229 emit(ctx, sltu, MIPS_R_T9, lo(dst), src); in emit_alu_i64() 230 emit(ctx, addu, hi(dst), hi(dst), MIPS_R_T9); in emit_alu_i64() 232 emit(ctx, addiu, hi(dst), hi(dst), -1); in emit_alu_i64() 236 emit(ctx, sltu, MIPS_R_T9, lo(dst), src); in emit_alu_i64() 237 emit(ctx, subu, lo(dst), lo(dst), src); in emit_alu_i64() [all …]
|
| D | bpf_jit_comp.c | 61 * Emit instructions for an ALU or ALU64 immediate or register operation. 97 * Emit instructions for an JMP or JMP32 immediate or register operation. 100 * Emit any instructions needed to finish the jump. This includes a nop 135 emit(ctx, sw, reg, depth, MIPS_R_SP); in push_regs() 137 emit(ctx, sd, reg, depth, MIPS_R_SP); in push_regs() 158 emit(ctx, lw, reg, depth, MIPS_R_SP); in pop_regs() 160 emit(ctx, ld, reg, depth, MIPS_R_SP); in pop_regs() 195 emit(ctx, addiu, dst, MIPS_R_ZERO, imm); in emit_mov_i() 197 emit(ctx, lui, dst, (s16)((u32)imm >> 16)); in emit_mov_i() 198 emit(ctx, ori, dst, dst, (u16)(imm & 0xffff)); in emit_mov_i() [all …]
|
| D | bpf_jit_comp64.c | 93 * operands or the result is unpredictable. We emit explicit sign-extensions 100 emit(ctx, sll, dst, src, 0); in emit_sext() 108 emit(ctx, dinsu, dst, MIPS_R_ZERO, 32, 32); in emit_zext() 110 emit(ctx, and, dst, dst, bpf2mips64[JIT_REG_ZX]); in emit_zext() 127 emit(ctx, daddiu, dst, MIPS_R_ZERO, (s16)imm64); in emit_mov_i64() 130 emit(ctx, lui, dst, (s16)(imm64 >> 16)); in emit_mov_i64() 131 emit(ctx, ori, dst, dst, (u16)imm64 & 0xffff); in emit_mov_i64() 145 emit(ctx, dsll_safe, dst, dst, shift); in emit_mov_i64() 146 emit(ctx, ori, dst, acc, half); in emit_mov_i64() 152 emit(ctx, dsll_safe, dst, dst, shift); in emit_mov_i64() [all …]
|
| /kernel/linux/linux-6.6/arch/parisc/net/ |
| D | bpf_jit_comp32.c | 126 emit(hppa_copy(rs, rd), ctx); in emit_hppa_copy() 135 emit(hppa_copy(HPPA_REG_ZERO, r3), ctx); in emit_hppa_xor() 137 emit(hppa_xor(r1, r2, r3), ctx); in emit_hppa_xor() 147 emit(hppa_ldi(imm, rd), ctx); in emit_imm() 150 emit(hppa_ldil(imm, rd), ctx); in emit_imm() 153 emit(hppa_ldo(lower, rd, rd), ctx); in emit_imm() 158 /* Emit immediate into lower bits. */ in emit_imm32() 167 emit(hppa_ldi(-1, hi(rd)), ctx); in emit_imm32() 189 emit(hppa_ldo(1 * HPPA_INSN_SIZE, HPPA_REG_T0, HPPA_REG_T0), ctx); in __build_epilogue() 190 emit(hppa_bv(HPPA_REG_ZERO, HPPA_REG_T0, EXEC_NEXT_INSTR), ctx); in __build_epilogue() [all …]
|
| D | bpf_jit_comp64.c | 76 emit(hppa_copy(rs, rd), ctx); in emit_hppa_copy() 89 emit(hppa_t10_insn(0x3c, target, src, 0, c, pos & 0x1f, len & 0x1f), ctx); in emit_hppa64_depd() 106 emit(hppa_t10_insn(0x36, src, target, 0, c, pos & 0x1f, len & 0x1f), ctx); in emit_hppa64_extrd() 116 emit(hppa_t10_insn(0x34, src, target, 0, c, pos, len), ctx); in emit_hppa64_extrw() 134 /* Emit variable-length instructions for 32-bit imm */ 141 emit(hppa_ldi(imm, rd), ctx); in emit_imm32() 145 emit(hppa_ldo(lower, HPPA_REG_ZERO, rd), ctx); in emit_imm32() 148 emit(hppa_ldil(imm, rd), ctx); in emit_imm32() 151 emit(hppa_ldo(lower, rd, rd), ctx); in emit_imm32() 159 /* Emit variable-length instructions for 64-bit imm */ [all …]
|
| /kernel/linux/linux-5.10/arch/powerpc/net/ |
| D | bpf_jit_comp64.c | 99 EMIT(PPC_RAW_LI(b2p[TMP_REG_1], 0)); in bpf_jit_build_prologue() 103 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 104 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 115 EMIT(PPC_INST_MFLR | __PPC_RT(R0)); in bpf_jit_build_prologue() 133 EMIT(PPC_RAW_ADDI(b2p[BPF_REG_FP], 1, in bpf_jit_build_prologue() 148 EMIT(PPC_RAW_ADDI(1, 1, BPF_PPC_STACKFRAME + ctx->stack_size)); in bpf_jit_emit_common_epilogue() 151 EMIT(PPC_RAW_MTLR(0)); in bpf_jit_emit_common_epilogue() 161 EMIT(PPC_RAW_MR(3, b2p[BPF_REG_0])); in bpf_jit_build_epilogue() 163 EMIT(PPC_RAW_BLR()); in bpf_jit_build_epilogue() 175 EMIT(PPC_RAW_MTLR(b2p[TMP_REG_1])); in bpf_jit_emit_func_call_hlp() [all …]
|
| D | bpf_jit_comp.c | 34 EMIT(PPC_INST_MFLR | __PPC_RT(R0)); in bpf_jit_build_prologue() 64 EMIT(PPC_RAW_SUB(r_HL, r_HL, r_scratch1)); in bpf_jit_build_prologue() 73 EMIT(PPC_RAW_LI(r_X, 0)); in bpf_jit_build_prologue() 78 EMIT(PPC_RAW_LI(r_A, 0)); in bpf_jit_build_prologue() 86 EMIT(PPC_RAW_ADDI(1, 1, BPF_PPC_STACKFRAME)); in bpf_jit_build_epilogue() 89 EMIT(PPC_RAW_MTLR(0)); in bpf_jit_build_epilogue() 103 EMIT(PPC_RAW_BLR()); in bpf_jit_build_epilogue() 137 EMIT(PPC_RAW_ADD(r_A, r_A, r_X)); in bpf_jit_build_body() 142 EMIT(PPC_RAW_ADDI(r_A, r_A, IMM_L(K))); in bpf_jit_build_body() 144 EMIT(PPC_RAW_ADDIS(r_A, r_A, IMM_HA(K))); in bpf_jit_build_body() [all …]
|
| D | bpf_jit32.h | 75 #define PPC_LBZ_OFFS(r, base, i) do { if ((i) < 32768) EMIT(PPC_RAW_LBZ(r, base, i)); \ 76 else { EMIT(PPC_RAW_ADDIS(r, base, IMM_HA(i))); \ 77 EMIT(PPC_RAW_LBZ(r, r, IMM_L(i))); } } while(0) 79 #define PPC_LD_OFFS(r, base, i) do { if ((i) < 32768) EMIT(PPC_RAW_LD(r, base, i)); \ 80 else { EMIT(PPC_RAW_ADDIS(r, base, IMM_HA(i))); \ 81 EMIT(PPC_RAW_LD(r, r, IMM_L(i))); } } while(0) 83 #define PPC_LWZ_OFFS(r, base, i) do { if ((i) < 32768) EMIT(PPC_RAW_LWZ(r, base, i)); \ 84 else { EMIT(PPC_RAW_ADDIS(r, base, IMM_HA(i))); \ 85 EMIT(PPC_RAW_LWZ(r, r, IMM_L(i))); } } while(0) 87 #define PPC_LHZ_OFFS(r, base, i) do { if ((i) < 32768) EMIT(PPC_RAW_LHZ(r, base, i)); \ [all …]
|
| D | bpf_jit.h | 25 #define EMIT(instr) PLANT_INSTR(image, ctx->idx, instr) macro 35 EMIT(PPC_INST_BRANCH | (offset & 0x03fffffc)); \ 45 EMIT(PPC_INST_BRANCH_COND | (((cond) & 0x3ff) << 16) | (offset & 0xfffc)); \ 52 EMIT(PPC_RAW_LI(d, i)); \ 54 EMIT(PPC_RAW_LIS(d, IMM_H(i))); \ 56 EMIT(PPC_RAW_ORI(d, d, IMM_L(i))); \ 65 EMIT(PPC_RAW_LI(d, ((uintptr_t)(i) >> 32) & \ 68 EMIT(PPC_RAW_LIS(d, ((uintptr_t)(i) >> 48))); \ 70 EMIT(PPC_RAW_ORI(d, d, \ 73 EMIT(PPC_RAW_SLDI(d, d, 32)); \ [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/net/ |
| D | bpf_jit_comp.c | 92 static inline void emit(const u32 insn, struct jit_ctx *ctx) in emit() function 108 emit(A64_MOVN(is64, reg, (u16)~lo, 0), ctx); in emit_a64_mov_i() 110 emit(A64_MOVN(is64, reg, (u16)~hi, 16), ctx); in emit_a64_mov_i() 112 emit(A64_MOVK(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 115 emit(A64_MOVZ(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 117 emit(A64_MOVK(is64, reg, hi, 16), ctx); in emit_a64_mov_i() 143 emit(A64_MOVN(1, reg, (rev_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 145 emit(A64_MOVZ(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 149 emit(A64_MOVK(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 157 emit(insn, ctx); in emit_bti() [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/net/ |
| D | bpf_jit_comp.c | 65 static inline void emit(const u32 insn, struct jit_ctx *ctx) in emit() function 81 emit(A64_MOVN(is64, reg, (u16)~lo, 0), ctx); in emit_a64_mov_i() 83 emit(A64_MOVN(is64, reg, (u16)~hi, 16), ctx); in emit_a64_mov_i() 85 emit(A64_MOVK(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 88 emit(A64_MOVZ(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 90 emit(A64_MOVK(is64, reg, hi, 16), ctx); in emit_a64_mov_i() 116 emit(A64_MOVN(1, reg, (rev_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 118 emit(A64_MOVZ(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 122 emit(A64_MOVK(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 138 emit(A64_MOVN(1, reg, ~tmp & 0xffff, shift), ctx); in emit_addr_mov_i64() [all …]
|
| /kernel/linux/linux-6.6/tools/lib/bpf/ |
| D | gen_loader.c | 96 static void emit(struct bpf_gen *gen, struct bpf_insn insn) in emit() function 106 emit(gen, insn1); in emit2() 107 emit(gen, insn2); in emit2() 121 emit(gen, BPF_MOV64_REG(BPF_REG_6, BPF_REG_1)); in bpf_gen__init() 124 emit(gen, BPF_MOV64_REG(BPF_REG_1, BPF_REG_10)); in bpf_gen__init() 125 emit(gen, BPF_ALU64_IMM(BPF_ADD, BPF_REG_1, -stack_sz)); in bpf_gen__init() 126 emit(gen, BPF_MOV64_IMM(BPF_REG_2, stack_sz)); in bpf_gen__init() 127 emit(gen, BPF_MOV64_IMM(BPF_REG_3, 0)); in bpf_gen__init() 128 emit(gen, BPF_EMIT_CALL(BPF_FUNC_probe_read_kernel)); in bpf_gen__init() 133 emit(gen, BPF_JMP_IMM(BPF_JA, 0, 0, in bpf_gen__init() [all …]
|
| /kernel/linux/linux-6.6/arch/arm/net/ |
| D | bpf_jit_32.c | 243 * Emit an instruction that will be executed unconditionally. 245 static inline void emit(u32 inst, struct jit_ctx *ctx) in emit() function 429 emit(ARM_LDR_I(rd, ARM_PC, imm_offset(val, ctx)), ctx); in emit_mov_i_no8m() 431 emit(ARM_MOVW(rd, val & 0xffff), ctx); in emit_mov_i_no8m() 433 emit(ARM_MOVT(rd, val >> 16), ctx); in emit_mov_i_no8m() 442 emit(ARM_MOV_I(rd, imm12), ctx); in emit_mov_i() 450 emit(ARM_BX(tgt_reg), ctx); in emit_bx_r() 452 emit(ARM_MOV_R(ARM_PC, tgt_reg), ctx); in emit_bx_r() 458 emit(ARM_MOV_R(ARM_LR, ARM_PC), ctx); in emit_blx_r() 461 emit(ARM_BLX_R(tgt_reg), ctx); in emit_blx_r() [all …]
|
| /kernel/linux/linux-5.10/arch/arm/net/ |
| D | bpf_jit_32.c | 243 * Emit an instruction that will be executed unconditionally. 245 static inline void emit(u32 inst, struct jit_ctx *ctx) in emit() function 429 emit(ARM_LDR_I(rd, ARM_PC, imm_offset(val, ctx)), ctx); in emit_mov_i_no8m() 431 emit(ARM_MOVW(rd, val & 0xffff), ctx); in emit_mov_i_no8m() 433 emit(ARM_MOVT(rd, val >> 16), ctx); in emit_mov_i_no8m() 442 emit(ARM_MOV_I(rd, imm12), ctx); in emit_mov_i() 450 emit(ARM_BX(tgt_reg), ctx); in emit_bx_r() 452 emit(ARM_MOV_R(ARM_PC, tgt_reg), ctx); in emit_bx_r() 458 emit(ARM_MOV_R(ARM_LR, ARM_PC), ctx); in emit_blx_r() 461 emit(ARM_BLX_R(tgt_reg), ctx); in emit_blx_r() [all …]
|
| /kernel/linux/linux-5.10/arch/sparc/net/ |
| D | bpf_jit_comp_64.c | 236 static void emit(const u32 insn, struct jit_ctx *ctx) in emit() function 258 emit(SETHI(0, G0), ctx); in emit_nop() 263 emit(OR | RS1(G0) | RS2(from) | RD(to), ctx); in emit_reg_move() 266 /* Emit 32-bit constant, zero extended. */ 269 emit(SETHI(K, reg), ctx); in emit_set_const() 270 emit(OR_LO(K, reg), ctx); in emit_set_const() 273 /* Emit 32-bit constant, sign extended. */ 277 emit(SETHI(K, reg), ctx); in emit_set_const_sext() 278 emit(OR_LO(K, reg), ctx); in emit_set_const_sext() 283 emit(SETHI(hbits, reg), ctx); in emit_set_const_sext() [all …]
|
| /kernel/linux/linux-6.6/arch/sparc/net/ |
| D | bpf_jit_comp_64.c | 236 static void emit(const u32 insn, struct jit_ctx *ctx) in emit() function 258 emit(SETHI(0, G0), ctx); in emit_nop() 263 emit(OR | RS1(G0) | RS2(from) | RD(to), ctx); in emit_reg_move() 266 /* Emit 32-bit constant, zero extended. */ 269 emit(SETHI(K, reg), ctx); in emit_set_const() 270 emit(OR_LO(K, reg), ctx); in emit_set_const() 273 /* Emit 32-bit constant, sign extended. */ 277 emit(SETHI(K, reg), ctx); in emit_set_const_sext() 278 emit(OR_LO(K, reg), ctx); in emit_set_const_sext() 283 emit(SETHI(hbits, reg), ctx); in emit_set_const_sext() [all …]
|
| /kernel/linux/linux-5.10/Documentation/input/ |
| D | uinput.rst | 48 void emit(int fd, int type, int code, int val) 95 emit(fd, EV_KEY, KEY_SPACE, 1); 96 emit(fd, EV_SYN, SYN_REPORT, 0); 97 emit(fd, EV_KEY, KEY_SPACE, 0); 98 emit(fd, EV_SYN, SYN_REPORT, 0); 122 /* emit function is identical to of the first example */ 159 emit(fd, EV_REL, REL_X, 5); 160 emit(fd, EV_REL, REL_Y, 5); 161 emit(fd, EV_SYN, SYN_REPORT, 0); 191 /* emit function is identical to of the first example */ [all …]
|
| /kernel/linux/linux-6.6/Documentation/input/ |
| D | uinput.rst | 48 void emit(int fd, int type, int code, int val) 95 emit(fd, EV_KEY, KEY_SPACE, 1); 96 emit(fd, EV_SYN, SYN_REPORT, 0); 97 emit(fd, EV_KEY, KEY_SPACE, 0); 98 emit(fd, EV_SYN, SYN_REPORT, 0); 122 /* emit function is identical to of the first example */ 159 emit(fd, EV_REL, REL_X, 5); 160 emit(fd, EV_REL, REL_Y, 5); 161 emit(fd, EV_SYN, SYN_REPORT, 0); 191 /* emit function is identical to of the first example */ [all …]
|