Home
last modified time | relevance | path

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

12345678910>>...15

/kernel/linux/linux-5.10/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.c215 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 …]
Dbpf_jit.h100 /* Emit a 4-byte riscv instruction. */
101 static inline void emit(const u32 insn, struct rv_jit_context *ctx) in emit() function
111 /* Emit a 2-byte riscv compressed instruction. */
670 * ensure that the RV32 JIT doesn't emit any of these instructions.
803 /* Helper functions that emit RVC instructions when possible. */
812 emit(rv_jalr(rd, rs, imm), ctx); in emit_jalr()
820 emit(rv_addi(rd, rs, 0), ctx); in emit_mv()
828 emit(rv_add(rd, rs1, rs2), ctx); in emit_add()
841 emit(rv_addi(rd, rs, imm), ctx); in emit_addi()
849 emit(rv_addi(rd, RV_REG_ZERO, imm), ctx); in emit_li()
[all …]
/kernel/linux/linux-5.10/arch/powerpc/net/
Dbpf_jit_comp64.c99 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 …]
Dbpf_jit_comp.c34 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 …]
Dbpf_jit32.h75 #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 …]
Dbpf_jit.h25 #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 …]
Dbpf_jit64.h73 EMIT(PPC_RAW_LI(b2p[TMP_REG_2], (i)));\
74 EMIT(PPC_RAW_LDX(r, base, \
77 EMIT(PPC_RAW_LD(r, base, i)); \
81 EMIT(PPC_RAW_LI(b2p[TMP_REG_2], (i)));\
82 EMIT(PPC_RAW_STDX(r, base, \
85 EMIT(PPC_RAW_STD(r, base, i)); \
87 #define PPC_BPF_STLU(r, base, i) do { EMIT(PPC_RAW_STDU(r, base, i)); } while(0)
/kernel/linux/linux-5.10/arch/arm64/net/
Dbpf_jit_comp.c65 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-5.10/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 …]
/kernel/linux/linux-5.10/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 …]
/kernel/linux/linux-5.10/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 …]
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gt/
Dintel_ring.c18 space = __intel_ring_space(ring->head, ring->emit, ring->size); in intel_ring_update_space()
65 intel_ring_reset(ring, ring->emit); in intel_ring_pin()
82 ring->emit = tail; in intel_ring_reset()
201 ring->emit, ring->size)) in wait_for_space()
224 const unsigned int remain_usable = ring->effective_size - ring->emit; in intel_ring_begin()
237 const int remain_actual = ring->size - ring->emit; in intel_ring_begin()
282 GEM_BUG_ON(ring->emit + need_wrap > ring->size); in intel_ring_begin()
286 memset64(ring->vaddr + ring->emit, 0, need_wrap / sizeof(u64)); in intel_ring_begin()
288 ring->emit = 0; in intel_ring_begin()
291 GEM_BUG_ON(ring->emit > ring->size - bytes); in intel_ring_begin()
[all …]
/kernel/linux/linux-5.10/arch/x86/include/asm/
Didtentry.h27 * as well which is used to emit the entry stubs in entry_32/64.S.
35 * DEFINE_IDTENTRY - Emit code for simple IDT entry points
86 * DEFINE_IDTENTRY_ERRORCODE - Emit code for simple IDT entry points
122 * DEFINE_IDTENTRY_RAW - Emit code for raw IDT entry points
150 * DEFINE_IDTENTRY_RAW_ERRORCODE - Emit code for raw IDT entry points
178 * DEFINE_IDTENTRY_IRQ - Emit code for device interrupt IDT entry points
224 * DEFINE_IDTENTRY_SYSVEC - Emit code for system vector IDT entry points
251 * DEFINE_IDTENTRY_SYSVEC_SIMPLE - Emit code for simple system vector IDT
322 * DEFINE_IDTENTRY_IST - Emit code for IST entry points
331 * DEFINE_IDTENTRY_NOIST - Emit code for NOIST entry points which
[all …]
/kernel/linux/linux-5.10/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.
/kernel/linux/linux-5.10/scripts/dtc/
Dflattree.c235 static void flatten_tree(struct node *tree, struct emitter *emit, in flatten_tree() argument
246 emit->beginnode(etarget, tree->labels); in flatten_tree()
249 emit->string(etarget, tree->fullpath, 0); in flatten_tree()
251 emit->string(etarget, tree->name, 0); in flatten_tree()
253 emit->align(etarget, sizeof(cell_t)); in flatten_tree()
263 emit->property(etarget, prop->labels); in flatten_tree()
264 emit->cell(etarget, prop->val.len); in flatten_tree()
265 emit->cell(etarget, nameoff); in flatten_tree()
268 emit->align(etarget, 8); in flatten_tree()
270 emit->data(etarget, prop->val); in flatten_tree()
[all …]
/kernel/linux/linux-5.10/arch/powerpc/kernel/syscalls/
Dsyscalltbl.sh10 emit() { function
30 emit $((nxt+offset)) $((nr+offset)) $compat
32 emit $((nxt+offset)) $((nr+offset)) $entry
/kernel/linux/linux-5.10/arch/mips/kernel/syscalls/
Dsyscalltbl.sh10 emit() { function
30 emit $((nxt+offset)) $((nr+offset)) $compat
32 emit $((nxt+offset)) $((nr+offset)) $entry
/kernel/linux/linux-5.10/arch/parisc/kernel/syscalls/
Dsyscalltbl.sh10 emit() { function
30 emit $((nxt+offset)) $((nr+offset)) $compat
32 emit $((nxt+offset)) $((nr+offset)) $entry
/kernel/linux/linux-5.10/arch/sparc/kernel/syscalls/
Dsyscalltbl.sh10 emit() { function
30 emit $((nxt+offset)) $((nr+offset)) $compat
32 emit $((nxt+offset)) $((nr+offset)) $entry
/kernel/linux/linux-5.10/arch/arm/include/asm/
Dopcodes.h174 * __inst_arm(x): emit the specified ARM opcode
175 * __inst_thumb16(x): emit the specified 16-bit Thumb opcode
176 * __inst_thumb32(x): emit the specified 32-bit Thumb opcode
178 * __inst_arm_thumb16(arm, thumb): emit either the specified arm or
182 * __inst_arm_thumb32(arm, thumb): emit either the specified arm or
/kernel/linux/linux-5.10/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
/kernel/linux/linux-5.10/tools/perf/arch/x86/entry/syscalls/
Dsyscalltbl.sh14 emit() { function
32 emit "$nr" "$name"
/kernel/linux/linux-5.10/arch/mips/vdso/
DKconfig2 # the base address of VDSO, the linker will emit a R_MIPS_PC32
10 # GCC (at least up to version 9.2) appears to emit function calls that make use

12345678910>>...15