| /linux/arch/powerpc/net/ |
| H A D | bpf_jit_comp32.c | 36 #define PPC_EX32(r, i) EMIT(PPC_RAW_LI((r), (i) < 0 ? -1 : 0)) 131 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 135 EMIT(PPC_RAW_LI(_R4, 0)); in bpf_jit_build_prologue() 137 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 142 EMIT(PPC_RAW_STWU(_R1, _R1, -BPF_PPC_STACKFRAME(ctx))); in bpf_jit_build_prologue() 145 EMIT(PPC_RAW_STW(_R4, _R1, bpf_jit_stack_offsetof(ctx, BPF_PPC_TC))); in bpf_jit_build_prologue() 148 EMIT(PPC_RAW_MR(bpf_to_ppc(BPF_REG_1), _R3)); in bpf_jit_build_prologue() 149 EMIT(PPC_RAW_LI(bpf_to_ppc(BPF_REG_1) - 1, 0)); in bpf_jit_build_prologue() 156 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue() 163 EMIT(PPC_RAW_STW(i, _R1, bpf_jit_stack_offsetof(ctx, i))); in bpf_jit_build_prologue() [all …]
|
| H A D | bpf_jit_comp64.c | 133 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 137 EMIT(PPC_RAW_LD(_R2, _R13, offsetof(struct paca_struct, kernel_toc))); in bpf_jit_build_prologue() 146 EMIT(PPC_RAW_LI(bpf_to_ppc(TMP_REG_1), 0)); in bpf_jit_build_prologue() 148 EMIT(PPC_RAW_STD(bpf_to_ppc(TMP_REG_1), _R1, -(BPF_PPC_STACK_SAVE + 8))); in bpf_jit_build_prologue() 150 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 151 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue() 160 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue() 161 EMIT(PPC_RAW_STD(_R0, _R1, PPC_LR_STKOFF)); in bpf_jit_build_prologue() 164 EMIT(PPC_RAW_STDU(_R1, _R1, -(BPF_PPC_STACKFRAME + ctx->stack_size))); in bpf_jit_build_prologue() 174 EMIT(PPC_RAW_STD(bpf_to_ppc(i), _R1, bpf_jit_stack_offsetof(ctx, bpf_to_ppc(i)))); in bpf_jit_build_prologue() [all …]
|
| H A D | bpf_jit_comp.c | 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() [all …]
|
| H A D | bpf_jit.h | 30 #define EMIT(instr) PLANT_INSTR(image, ctx->idx, instr) macro 40 EMIT(PPC_RAW_BRANCH(offset)); \ 51 EMIT(PPC_INST_BRANCH_COND | (((cond) & 0x3ff) << 16) | (offset & 0xfffc)); \ 66 EMIT(PPC_RAW_LI(d, i)); \ 68 EMIT(PPC_RAW_LIS(d, IMM_H(i))); \ 70 EMIT(PPC_RAW_ORI(d, d, IMM_L(i))); \ 85 EMIT(PPC_RAW_LI(d, ((uintptr_t)(i) >> 32) & \ 88 EMIT(PPC_RAW_LIS(d, ((uintptr_t)(i) >> 48))); \ 90 EMIT(PPC_RAW_ORI(d, d, \ 93 EMIT(PPC_RAW_SLDI(d, d, 32)); \ [all …]
|
| /linux/arch/riscv/net/ |
| H A 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 …]
|
| H A D | bpf_jit_comp64.c | 22 /* imm that allows emit_imm to emit max count insns */ 165 /* Emit fixed-length instructions for address */ 182 emit(rv_auipc(rd, upper), ctx); in emit_addr() 183 emit(rv_addi(rd, rd, lower), ctx); in emit_addr() 187 /* Emit variable-length instructions for 32-bit and 64-bit imm */ 285 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc() 288 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc() 291 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 294 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc() 297 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc() [all …]
|
| /linux/arch/mips/net/ |
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| /linux/arch/parisc/net/ |
| H A 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 …]
|
| H A 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 …]
|
| /linux/arch/arm64/net/ |
| H A D | bpf_jit_comp.c | 110 static inline void emit(const u32 insn, struct jit_ctx *ctx) in emit() function 134 emit(A64_MOVN(is64, reg, (u16)~lo, 0), ctx); in emit_a64_mov_i() 136 emit(A64_MOVN(is64, reg, (u16)~hi, 16), ctx); in emit_a64_mov_i() 138 emit(A64_MOVK(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 141 emit(A64_MOVZ(is64, reg, lo, 0), ctx); in emit_a64_mov_i() 143 emit(A64_MOVK(is64, reg, hi, 16), ctx); in emit_a64_mov_i() 169 emit(A64_MOVN(1, reg, (rev_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 171 emit(A64_MOVZ(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 175 emit(A64_MOVK(1, reg, (nrm_tmp >> shift) & 0xffff, shift), ctx); in emit_a64_mov_i64() 183 emit(insn, ctx); in emit_bti() [all …]
|
| /linux/arch/arm/net/ |
| H A D | bpf_jit_32.c | 283 * Emit an instruction that will be executed unconditionally. 285 static inline void emit(u32 inst, struct jit_ctx *ctx) in emit() function 472 emit(ARM_LDR_I(rd, ARM_PC, imm_offset(val, ctx)), ctx); in emit_mov_i_no8m() 474 emit(ARM_MOVW(rd, val & 0xffff), ctx); in emit_mov_i_no8m() 476 emit(ARM_MOVT(rd, val >> 16), ctx); in emit_mov_i_no8m() 485 emit(ARM_MOV_I(rd, imm12), ctx); in emit_mov_i() 493 emit(ARM_BX(tgt_reg), ctx); in emit_bx_r() 495 emit(ARM_MOV_R(ARM_PC, tgt_reg), ctx); in emit_bx_r() 501 emit(ARM_MOV_R(ARM_LR, ARM_PC), ctx); in emit_blx_r() 504 emit(ARM_BLX_R(tgt_reg), ctx); in emit_blx_r() [all …]
|
| /linux/arch/sparc/net/ |
| H A 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 …]
|
| /linux/Documentation/input/ |
| H A 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 …]
|
| /linux/tools/net/sunrpc/xdrgen/generators/ |
| H A D | program.py | 15 """Emit procedure numbers for each RPC version's procedures""" 36 """Emit declarations for each RPC version's procedures""" 61 """Emit server argument decoders for each RPC version's procedures""" 75 """Emit client result decoders for each RPC version's procedures""" 89 """Emit client argument encoders for each RPC version's procedures""" 103 """Emit server result encoders for each RPC version's procedures""" 123 """Emit procedure numbers for each of an RPC programs's procedures""" 131 """Emit a declaration pair for each of an RPC programs's procedures""" 139 """Emit all decoder functions for an RPC program's procedures""" 155 """Emit all encoder functions for an RPC program's procedures"""
|
| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | intel_ring.c | 23 space = __intel_ring_space(ring->head, ring->emit, ring->size); in intel_ring_update_space() 73 intel_ring_reset(ring, ring->emit); in intel_ring_pin() 90 ring->emit = tail; in intel_ring_reset() 210 ring->emit, ring->size)) in wait_for_space() 233 const unsigned int remain_usable = ring->effective_size - ring->emit; in intel_ring_begin() 246 const int remain_actual = ring->size - ring->emit; in intel_ring_begin() 291 GEM_BUG_ON(ring->emit + need_wrap > ring->size); in intel_ring_begin() 295 memset64(ring->vaddr + ring->emit, 0, need_wrap / sizeof(u64)); in intel_ring_begin() 297 ring->emit = 0; in intel_ring_begin() 300 GEM_BUG_ON(ring->emit > ring->size - bytes); in intel_ring_begin() [all …]
|
| /linux/arch/x86/include/asm/ |
| H A D | idtentry.h | 32 * as well which is used to emit the entry stubs in entry_32/64.S. 41 * DEFINE_IDTENTRY - Emit code for simple IDT entry points 92 * DEFINE_IDTENTRY_ERRORCODE - Emit code for simple IDT entry points 128 * DEFINE_IDTENTRY_RAW - Emit code for raw IDT entry points 145 * DEFINE_FREDENTRY_RAW - Emit code for raw FRED entry points 167 * DEFINE_IDTENTRY_RAW_ERRORCODE - Emit code for raw IDT entry points 195 * DEFINE_IDTENTRY_IRQ - Emit code for device interrupt IDT entry points 240 * DEFINE_IDTENTRY_SYSVEC - Emit code for system vector IDT entry points 275 * DEFINE_IDTENTRY_SYSVEC_SIMPLE - Emit code for simple system vector IDT 356 * DEFINE_IDTENTRY_IST - Emit code for IST entry points [all …]
|
| /linux/scripts/dtc/ |
| H A D | flattree.c | 236 static void flatten_tree(struct node *tree, struct emitter *emit, in flatten_tree() argument 247 emit->beginnode(etarget, tree->labels); in flatten_tree() 250 emit->string(etarget, tree->fullpath, 0); in flatten_tree() 252 emit->string(etarget, tree->name, 0); in flatten_tree() 254 emit->align(etarget, sizeof(cell_t)); in flatten_tree() 264 emit->property(etarget, prop->labels); in flatten_tree() 265 emit->cell(etarget, prop->val.len); in flatten_tree() 266 emit->cell(etarget, nameoff); in flatten_tree() 269 emit->align(etarget, 8); in flatten_tree() 271 emit in flatten_tree() [all...] |
| /linux/drivers/gpu/drm/radeon/ |
| H A D | uvd_v3_1.c | 30 * uvd_v3_1_semaphore_emit - emit semaphore command 34 * @semaphore: semaphore to emit commands for 35 * @emit_wait: true if we should emit a wait command 37 * Emit a semaphore command (either wait or signal) to the UVD ring.
|
| H A D | uvd_v2_2.c | 32 * uvd_v2_2_fence_emit - emit an fence & trap command 35 * @fence: fence to emit 63 * uvd_v2_2_semaphore_emit - emit semaphore command 67 * @semaphore: semaphore to emit commands for 68 * @emit_wait: true if we should emit a wait command 70 * Emit a semaphore command (either wait or signal) to the UVD ring.
|
| /linux/scripts/ |
| H A D | syscallhdr.sh | 19 …echo >&2 "usage: $0 [--abis ABIS] [--emit-nr] [--offset OFFSET] [--prefix PREFIX] INFILE OUTFILE" … 26 echo >&2 " --emit-nr Emit the macro of the number of syscalls (__NR_syscalls)" 44 --emit-nr)
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | reg_bounds.c | 856 #define emit(insn) ({ \ in load_range_cmp_prog() macro 876 emit(BPF_JMP_A(2)); in load_range_cmp_prog() 883 emit(BPF_MOV64_IMM(BPF_REG_0, 0)); in load_range_cmp_prog() 884 emit(BPF_EXIT_INSN()); in load_range_cmp_prog() 892 emit(BPF_EMIT_CALL(BPF_FUNC_get_current_pid_tgid)); in load_range_cmp_prog() 894 emit(BPF_MOV32_REG(BPF_REG_6, BPF_REG_0)); in load_range_cmp_prog() 896 emit(BPF_MOV64_REG(BPF_REG_6, BPF_REG_0)); in load_range_cmp_prog() 897 emit(BPF_EMIT_CALL(BPF_FUNC_get_current_pid_tgid)); in load_range_cmp_prog() 899 emit(BPF_MOV32_REG(BPF_REG_7, BPF_REG_0)); in load_range_cmp_prog() 901 emit(BPF_MOV64_RE in load_range_cmp_prog() [all...] |
| /linux/arch/arm/include/asm/ |
| H A D | opcodes.h | 179 * __inst_arm(x): emit the specified ARM opcode 180 * __inst_thumb16(x): emit the specified 16-bit Thumb opcode 181 * __inst_thumb32(x): emit the specified 32-bit Thumb opcode 183 * __inst_arm_thumb16(arm, thumb): emit either the specified arm or 187 * __inst_arm_thumb32(arm, thumb): emit either the specified arm or
|
| /linux/rust/macros/ |
| H A D | module.rs | 86 fn emit(&mut self, field: &str, content: &str) { in emit() method 181 modinfo.emit("author", &author); in module() 185 modinfo.emit("description", &description); in module() 187 modinfo.emit("license", &info.license); in module() 190 modinfo.emit("alias", &alias); in module() 195 modinfo.emit("firmware", &fw); in module()
|