Home
last modified time | relevance | path

Searched full:emit (Results 1 – 25 of 423) sorted by relevance

12345678910>>...17

/Linux-v6.1/arch/riscv/net/
Dbpf_jit_comp32.c117 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 …]
Dbpf_jit_comp64.c231 emit(rv_beq(rd, rs, rvoff >> 1), ctx); in emit_bcc()
234 emit(rv_bltu(rs, rd, rvoff >> 1), ctx); in emit_bcc()
237 emit(rv_bltu(rd, rs, rvoff >> 1), ctx); in emit_bcc()
240 emit(rv_bgeu(rd, rs, rvoff >> 1), ctx); in emit_bcc()
243 emit(rv_bgeu(rs, rd, rvoff >> 1), ctx); in emit_bcc()
246 emit(rv_bne(rd, rs, rvoff >> 1), ctx); in emit_bcc()
249 emit(rv_blt(rs, rd, rvoff >> 1), ctx); in emit_bcc()
252 emit(rv_blt(rd, rs, rvoff >> 1), ctx); in emit_bcc()
255 emit(rv_bge(rd, rs, rvoff >> 1), ctx); in emit_bcc()
258 emit(rv_bge(rs, rd, rvoff >> 1), ctx); in emit_bcc()
[all …]
Dbpf_jit.h102 /* Emit a 4-byte riscv instruction. */
103 static inline void emit(const u32 insn, struct rv_jit_context *ctx) in emit() function
113 /* Emit a 2-byte riscv compressed instruction. */
709 * ensure that the RV32 JIT doesn't emit any of these instructions.
872 /* Helper functions that emit RVC instructions when possible. */
881 emit(rv_jalr(rd, rs, imm), ctx); in emit_jalr()
889 emit(rv_addi(rd, rs, 0), ctx); in emit_mv()
897 emit(rv_add(rd, rs1, rs2), ctx); in emit_add()
910 emit(rv_addi(rd, rs, imm), ctx); in emit_addi()
918 emit(rv_addi(rd, RV_REG_ZERO, imm), ctx); in emit_li()
[all …]
/Linux-v6.1/arch/powerpc/net/
Dbpf_jit_comp32.c36 #define PPC_EX32(r, i) EMIT(PPC_RAW_LI((r), (i) < 0 ? -1 : 0))
117 EMIT(PPC_RAW_LI(_R4, 0)); in bpf_jit_build_prologue()
121 EMIT(PPC_RAW_STWU(_R1, _R1, -BPF_PPC_STACKFRAME(ctx))); in bpf_jit_build_prologue()
124 EMIT(PPC_RAW_STW(_R4, _R1, bpf_jit_stack_offsetof(ctx, BPF_PPC_TC))); in bpf_jit_build_prologue()
127 EMIT(PPC_RAW_MR(bpf_to_ppc(BPF_REG_1), _R3)); in bpf_jit_build_prologue()
128 EMIT(PPC_RAW_LI(bpf_to_ppc(BPF_REG_1) - 1, 0)); in bpf_jit_build_prologue()
135 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue()
142 EMIT(PPC_RAW_STW(i, _R1, bpf_jit_stack_offsetof(ctx, i))); in bpf_jit_build_prologue()
146 EMIT(PPC_RAW_LWZ(bpf_to_ppc(BPF_REG_5) - 1, _R1, BPF_PPC_STACKFRAME(ctx)) + 8); in bpf_jit_build_prologue()
147 EMIT(PPC_RAW_LWZ(bpf_to_ppc(BPF_REG_5), _R1, BPF_PPC_STACKFRAME(ctx)) + 12); in bpf_jit_build_prologue()
[all …]
Dbpf_jit_comp64.c130 EMIT(PPC_RAW_LD(_R2, _R13, offsetof(struct paca_struct, kernel_toc))); in bpf_jit_build_prologue()
138 EMIT(PPC_RAW_LI(bpf_to_ppc(TMP_REG_1), 0)); in bpf_jit_build_prologue()
140 EMIT(PPC_RAW_STD(bpf_to_ppc(TMP_REG_1), _R1, -(BPF_PPC_STACK_SAVE + 8))); in bpf_jit_build_prologue()
142 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue()
143 EMIT(PPC_RAW_NOP()); in bpf_jit_build_prologue()
152 EMIT(PPC_RAW_MFLR(_R0)); in bpf_jit_build_prologue()
153 EMIT(PPC_RAW_STD(_R0, _R1, PPC_LR_STKOFF)); in bpf_jit_build_prologue()
156 EMIT(PPC_RAW_STDU(_R1, _R1, -(BPF_PPC_STACKFRAME + ctx->stack_size))); in bpf_jit_build_prologue()
166 EMIT(PPC_RAW_STD(bpf_to_ppc(i), _R1, bpf_jit_stack_offsetof(ctx, bpf_to_ppc(i)))); in bpf_jit_build_prologue()
170 EMIT(PPC_RAW_ADDI(bpf_to_ppc(BPF_REG_FP), _R1, in bpf_jit_build_prologue()
[all …]
Dbpf_jit.h24 #define EMIT(instr) PLANT_INSTR(image, ctx->idx, instr) macro
34 EMIT(PPC_RAW_BRANCH(offset)); \
38 #define PPC_BL(dest) EMIT(PPC_RAW_BL((dest) - (unsigned long)(image + ctx->idx)))
48 EMIT(PPC_INST_BRANCH_COND | (((cond) & 0x3ff) << 16) | (offset & 0xfffc)); \
55 EMIT(PPC_RAW_LI(d, i)); \
57 EMIT(PPC_RAW_LIS(d, IMM_H(i))); \
59 EMIT(PPC_RAW_ORI(d, d, IMM_L(i))); \
69 EMIT(PPC_RAW_LI(d, ((uintptr_t)(i) >> 32) & \
72 EMIT(PPC_RAW_LIS(d, ((uintptr_t)(i) >> 48))); \
74 EMIT(PPC_RAW_ORI(d, d, \
[all …]
/Linux-v6.1/arch/mips/net/
Dbpf_jit_comp32.c178 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 …]
Dbpf_jit_comp.c61 * 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 …]
Dbpf_jit_comp64.c93 * 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-v6.1/arch/arm64/net/
Dbpf_jit_comp.c92 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 …]
/Linux-v6.1/tools/lib/bpf/
Dgen_loader.c96 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 …]
/Linux-v6.1/arch/arm/net/
Dbpf_jit_32.c243 * 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 …]
/Linux-v6.1/arch/sparc/net/
Dbpf_jit_comp_64.c236 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-v6.1/Documentation/input/
Duinput.rst48 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-v6.1/drivers/gpu/drm/i915/gt/
Dintel_ring.c22 space = __intel_ring_space(ring->head, ring->emit, ring->size); in intel_ring_update_space()
72 intel_ring_reset(ring, ring->emit); in intel_ring_pin()
89 ring->emit = tail; in intel_ring_reset()
209 ring->emit, ring->size)) in wait_for_space()
232 const unsigned int remain_usable = ring->effective_size - ring->emit; in intel_ring_begin()
245 const int remain_actual = ring->size - ring->emit; in intel_ring_begin()
290 GEM_BUG_ON(ring->emit + need_wrap > ring->size); in intel_ring_begin()
294 memset64(ring->vaddr + ring->emit, 0, need_wrap / sizeof(u64)); in intel_ring_begin()
296 ring->emit = 0; in intel_ring_begin()
299 GEM_BUG_ON(ring->emit > ring->size - bytes); in intel_ring_begin()
[all …]
/Linux-v6.1/arch/x86/include/asm/
Didtentry.h29 * as well which is used to emit the entry stubs in entry_32/64.S.
37 * DEFINE_IDTENTRY - Emit code for simple IDT entry points
88 * DEFINE_IDTENTRY_ERRORCODE - Emit code for simple IDT entry points
124 * DEFINE_IDTENTRY_RAW - Emit code for raw IDT entry points
152 * DEFINE_IDTENTRY_RAW_ERRORCODE - Emit code for raw IDT entry points
180 * DEFINE_IDTENTRY_IRQ - Emit code for device interrupt IDT entry points
225 * DEFINE_IDTENTRY_SYSVEC - Emit code for system vector IDT entry points
250 * DEFINE_IDTENTRY_SYSVEC_SIMPLE - Emit code for simple system vector IDT
321 * DEFINE_IDTENTRY_IST - Emit code for IST entry points
330 * DEFINE_IDTENTRY_NOIST - Emit code for NOIST entry points which
[all …]
/Linux-v6.1/drivers/gpu/drm/radeon/
Duvd_v3_1.c30 * 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.
Duvd_v2_2.c32 * 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-v6.1/scripts/dtc/
Dflattree.c236 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->data(etarget, prop->val); in flatten_tree()
[all …]
/Linux-v6.1/scripts/
Dsyscallhdr.sh19 …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-v6.1/tools/testing/selftests/drivers/net/netdevsim/
Dfib_notifications.sh124 # notify=2 means emit notifications only for failed route installation,
223 # notify=2 means emit notifications only for failed route installation,
259 # notify=2 means emit notifications only for failed route installation,
290 # notify=2 means emit notifications only for failed route installation,
339 # notify=2 means emit notifications only for failed route installation,
375 # notify=2 means emit notifications only for failed route installation,
/Linux-v6.1/arch/x86/net/
Dbpf_jit_comp.c32 #define EMIT(bytes, len) \ macro
35 #define EMIT1(b1) EMIT(b1, 1)
36 #define EMIT2(b1, b2) EMIT((b1) + ((b2) << 8), 2)
37 #define EMIT3(b1, b2, b3) EMIT((b1) + ((b2) << 8) + ((b3) << 16), 3)
38 #define EMIT4(b1, b2, b3, b4) EMIT((b1) + ((b2) << 8) + ((b3) << 16) + ((b4) << 24), 4)
41 do { EMIT1(b1); EMIT(off, 4); } while (0)
43 do { EMIT2(b1, b2); EMIT(off, 4); } while (0)
45 do { EMIT3(b1, b2, b3); EMIT(off, 4); } while (0)
47 do { EMIT4(b1, b2, b3, b4); EMIT(off, 4); } while (0)
50 #define EMIT_ENDBR() EMIT(gen_endbr(), 4)
[all …]
/Linux-v6.1/arch/arm/include/asm/
Dopcodes.h179 * __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-v6.1/rust/macros/
Dmodule.rs68 fn emit(&mut self, field: &str, content: &str) { in emit() method
160 modinfo.emit("author", &author); in module()
163 modinfo.emit("description", &description); in module()
165 modinfo.emit("license", &info.license); in module()
167 modinfo.emit("alias", &alias); in module()
/Linux-v6.1/arch/s390/include/asm/
Ddwarf.h21 * Emit CFI data in .debug_frame sections and not in .eh_frame
29 * For vDSO, emit CFI data in both, .eh_frame and .debug_frame

12345678910>>...17