Home
last modified time | relevance | path

Searched refs:instr (Results 1 – 25 of 183) sorted by relevance

12345678

/Linux-v4.19/arch/powerpc/lib/
Dcode-patching.c26 static int __patch_instruction(unsigned int *exec_addr, unsigned int instr, in __patch_instruction() argument
31 __put_user_size(instr, patch_addr, 4, err); in __patch_instruction()
41 int raw_patch_instruction(unsigned int *addr, unsigned int instr) in raw_patch_instruction() argument
43 return __patch_instruction(addr, instr, addr); in raw_patch_instruction()
145 static int do_patch_instruction(unsigned int *addr, unsigned int instr) in do_patch_instruction() argument
159 return raw_patch_instruction(addr, instr); in do_patch_instruction()
172 __patch_instruction(addr, instr, patch_addr); in do_patch_instruction()
185 static int do_patch_instruction(unsigned int *addr, unsigned int instr) in do_patch_instruction() argument
187 return raw_patch_instruction(addr, instr); in do_patch_instruction()
192 int patch_instruction(unsigned int *addr, unsigned int instr) in patch_instruction() argument
[all …]
Dsstep.c86 static nokprobe_inline int branch_taken(unsigned int instr, in branch_taken() argument
90 unsigned int bo = (instr >> 21) & 0x1f; in branch_taken()
101 bi = (instr >> 16) & 0x1f; in branch_taken()
126 static nokprobe_inline unsigned long dform_ea(unsigned int instr, in dform_ea() argument
132 ra = (instr >> 16) & 0x1f; in dform_ea()
133 ea = (signed short) instr; /* sign-extend */ in dform_ea()
144 static nokprobe_inline unsigned long dsform_ea(unsigned int instr, in dsform_ea() argument
150 ra = (instr >> 16) & 0x1f; in dsform_ea()
151 ea = (signed short) (instr & ~3); /* sign-extend */ in dsform_ea()
161 static nokprobe_inline unsigned long dqform_ea(unsigned int instr, in dqform_ea() argument
[all …]
/Linux-v4.19/arch/powerpc/include/asm/
Dprobes.h29 #define IS_TW(instr) (((instr) & 0xfc0007fe) == 0x7c000008) argument
30 #define IS_TD(instr) (((instr) & 0xfc0007fe) == 0x7c000088) argument
31 #define IS_TDI(instr) (((instr) & 0xfc000000) == 0x08000000) argument
32 #define IS_TWI(instr) (((instr) & 0xfc000000) == 0x0c000000) argument
35 #define is_trap(instr) (IS_TW(instr) || IS_TD(instr) || \ argument
36 IS_TWI(instr) || IS_TDI(instr))
38 #define is_trap(instr) (IS_TW(instr) || IS_TWI(instr)) argument
Ddisassemble.h101 static inline unsigned make_dsisr(unsigned instr) in make_dsisr() argument
107 dsisr = (instr & 0x03ff0000) >> 16; in make_dsisr()
109 if (IS_XFORM(instr)) { in make_dsisr()
111 dsisr |= (instr & 0x00000006) << 14; in make_dsisr()
113 dsisr |= (instr & 0x00000040) << 8; in make_dsisr()
115 dsisr |= (instr & 0x00000780) << 3; in make_dsisr()
118 dsisr |= (instr & 0x04000000) >> 12; in make_dsisr()
120 dsisr |= (instr & 0x78000000) >> 17; in make_dsisr()
122 if (IS_DSFORM(instr)) in make_dsisr()
123 dsisr |= (instr & 0x00000003) << 18; in make_dsisr()
Dcode-patching.h34 int patch_instruction(unsigned int *addr, unsigned int instr);
35 int raw_patch_instruction(unsigned int *addr, unsigned int instr);
36 int patch_instruction_site(s32 *addr, unsigned int instr);
39 int instr_is_relative_branch(unsigned int instr);
40 int instr_is_relative_link_branch(unsigned int instr);
41 int instr_is_branch_to_addr(const unsigned int *instr, unsigned long addr);
42 unsigned long branch_target(const unsigned int *instr);
45 extern bool is_conditional_branch(unsigned int instr);
Dsstep.h22 #define IS_MTMSRD(instr) (((instr) & 0xfc0007be) == 0x7c000124) argument
23 #define IS_RFID(instr) (((instr) & 0xfc0007fe) == 0x4c000024) argument
24 #define IS_RFI(instr) (((instr) & 0xfc0007fe) == 0x4c000064) argument
139 unsigned int instr);
156 extern int emulate_step(struct pt_regs *regs, unsigned int instr);
/Linux-v4.19/arch/arm/mm/
Dalignment.c330 do_alignment_finish_ldst(unsigned long addr, unsigned long instr, struct pt_regs *regs, union offse… in do_alignment_finish_ldst() argument
332 if (!LDST_U_BIT(instr)) in do_alignment_finish_ldst()
335 if (!LDST_P_BIT(instr)) in do_alignment_finish_ldst()
338 if (!LDST_P_BIT(instr) || LDST_W_BIT(instr)) in do_alignment_finish_ldst()
339 regs->uregs[RN_BITS(instr)] = addr; in do_alignment_finish_ldst()
343 do_alignment_ldrhstrh(unsigned long addr, unsigned long instr, struct pt_regs *regs) in do_alignment_ldrhstrh() argument
345 unsigned int rd = RD_BITS(instr); in do_alignment_ldrhstrh()
352 if (LDST_L_BIT(instr)) { in do_alignment_ldrhstrh()
357 if (instr & 0x40) in do_alignment_ldrhstrh()
367 if (LDST_L_BIT(instr)) { in do_alignment_ldrhstrh()
[all …]
/Linux-v4.19/arch/unicore32/mm/
Dalignment.c201 do_alignment_finish_ldst(unsigned long addr, unsigned long instr, in do_alignment_finish_ldst() argument
204 if (!LDST_U_BIT(instr)) in do_alignment_finish_ldst()
207 if (!LDST_P_BIT(instr)) in do_alignment_finish_ldst()
210 if (!LDST_P_BIT(instr) || LDST_W_BIT(instr)) in do_alignment_finish_ldst()
211 regs->uregs[RN_BITS(instr)] = addr; in do_alignment_finish_ldst()
215 do_alignment_ldrhstrh(unsigned long addr, unsigned long instr, in do_alignment_ldrhstrh() argument
218 unsigned int rd = RD_BITS(instr); in do_alignment_ldrhstrh()
221 if ((instr & 0x4b003fe0) == 0x40000120) in do_alignment_ldrhstrh()
224 if (LDST_L_BIT(instr)) { in do_alignment_ldrhstrh()
229 if (instr & 0x80) in do_alignment_ldrhstrh()
[all …]
/Linux-v4.19/drivers/net/ethernet/netronome/nfp/
Dnfp_asm.c60 u16 br_get_offset(u64 instr) in br_get_offset() argument
64 addr_lo = FIELD_GET(OP_BR_ADDR_LO, instr); in br_get_offset()
65 addr_hi = FIELD_GET(OP_BR_ADDR_HI, instr); in br_get_offset()
71 void br_set_offset(u64 *instr, u16 offset) in br_set_offset() argument
77 *instr &= ~(OP_BR_ADDR_HI | OP_BR_ADDR_LO); in br_set_offset()
78 *instr |= FIELD_PREP(OP_BR_ADDR_HI, addr_hi); in br_set_offset()
79 *instr |= FIELD_PREP(OP_BR_ADDR_LO, addr_lo); in br_set_offset()
82 void br_add_offset(u64 *instr, u16 offset) in br_add_offset() argument
86 addr = br_get_offset(*instr); in br_add_offset()
87 br_set_offset(instr, addr + offset); in br_add_offset()
[all …]
/Linux-v4.19/arch/alpha/lib/
Dstacktrace.c4 typedef unsigned int instr; typedef
34 (((instr)(INSTR) >= BR_OP) | ((instr)(INSTR) < LDA_OP) | \
35 ((((instr)(INSTR) ^ 0x60000000) < 0x20000000) & \
36 (((instr)(INSTR) & 0x0c000000) != 0)))
48 static instr *
49 display_stored_regs(instr * pro_pc, unsigned char * sp) in display_stored_regs()
51 instr * ret_pc = 0; in display_stored_regs()
61 ret_pc = (instr *)value; in display_stored_regs()
67 static instr *
68 seek_prologue(instr * pc) in seek_prologue()
[all …]
/Linux-v4.19/samples/seccomp/
Dbpf-helper.c32 struct sock_filter *instr = &filter[offset]; in bpf_resolve_jumps() local
33 if (instr->code != (BPF_JMP+BPF_JA)) in bpf_resolve_jumps()
35 switch ((instr->jt<<8)|instr->jf) { in bpf_resolve_jumps()
37 if (labels->labels[instr->k].location == 0xffffffff) { in bpf_resolve_jumps()
39 labels->labels[instr->k].label); in bpf_resolve_jumps()
42 instr->k = labels->labels[instr->k].location - in bpf_resolve_jumps()
44 instr->jt = 0; in bpf_resolve_jumps()
45 instr->jf = 0; in bpf_resolve_jumps()
48 if (labels->labels[instr->k].location != 0xffffffff) { in bpf_resolve_jumps()
50 labels->labels[instr->k].label); in bpf_resolve_jumps()
[all …]
/Linux-v4.19/scripts/kconfig/lxdialog/
Dinputbox.c50 char *instr = dialog_input_result; in dialog_inputbox() local
54 instr[0] = '\0'; in dialog_inputbox()
56 strcpy(instr, init); in dialog_inputbox()
101 len = strlen(instr); in dialog_inputbox()
108 waddch(dialog, instr[show_x + i]); in dialog_inputbox()
112 waddstr(dialog, instr); in dialog_inputbox()
139 instr[i] = instr[i+1]; in dialog_inputbox()
145 instr[len] = '\0'; in dialog_inputbox()
148 if (!instr[show_x + i]) { in dialog_inputbox()
152 waddch(dialog, instr[show_x + i]); in dialog_inputbox()
[all …]
/Linux-v4.19/arch/arm/include/asm/
Dunified.h49 #define W(instr) instr.w argument
51 #define WASM(instr) #instr ".w"
62 #define W(instr) instr
64 #define WASM(instr) #instr
Ddomain.h136 #define TUSER(instr) #instr "t" argument
138 #define TUSER(instr) #instr argument
148 #define TUSER(instr) instr ## t argument
150 #define TUSER(instr) instr argument
/Linux-v4.19/drivers/watchdog/
Dwdat_wdt.c61 const struct wdat_instruction *instr, u32 *value) in wdat_wdt_read() argument
63 const struct acpi_generic_address *gas = &instr->entry.register_region; in wdat_wdt_read()
67 *value = ioread8(instr->reg); in wdat_wdt_read()
70 *value = ioread16(instr->reg); in wdat_wdt_read()
73 *value = ioread32(instr->reg); in wdat_wdt_read()
86 const struct wdat_instruction *instr, u32 value) in wdat_wdt_write() argument
88 const struct acpi_generic_address *gas = &instr->entry.register_region; in wdat_wdt_write()
92 iowrite8((u8)value, instr->reg); in wdat_wdt_write()
95 iowrite16((u16)value, instr->reg); in wdat_wdt_write()
98 iowrite32(value, instr->reg); in wdat_wdt_write()
[all …]
/Linux-v4.19/arch/s390/kernel/
Dnospec-branch.c101 u8 *instr, *thunk, *br; in __nospec_revert() local
107 instr = (u8 *) epo + *epo; in __nospec_revert()
108 if (instr[0] == 0xc0 && (instr[1] & 0x0f) == 0x04) in __nospec_revert()
110 else if (instr[0] == 0xc0 && (instr[1] & 0x0f) == 0x05) in __nospec_revert()
114 thunk = instr + (*(int *)(instr + 2)) * 2; in __nospec_revert()
134 insnbuf[1] = (instr[1] & 0xf0) | (br[1] & 0x0f); in __nospec_revert()
144 insnbuf[1] = (instr[1] & 0xf0) | (br[1] & 0x0f); in __nospec_revert()
157 s390_kernel_write(instr, insnbuf, 6); in __nospec_revert()
/Linux-v4.19/arch/arm64/kernel/
Dtrace-events-emulation.h12 TP_PROTO(const char *instr, u64 addr),
13 TP_ARGS(instr, addr),
16 __string(instr, instr)
21 __assign_str(instr, instr);
25 TP_printk("instr=\"%s\" addr=0x%llx", __get_str(instr), __entry->addr)
/Linux-v4.19/lib/xz/
Dxz_dec_bcj.c163 uint32_t instr; in bcj_powerpc() local
166 instr = get_unaligned_be32(buf + i); in bcj_powerpc()
167 if ((instr & 0xFC000003) == 0x48000001) { in bcj_powerpc()
168 instr &= 0x03FFFFFC; in bcj_powerpc()
169 instr -= s->pos + (uint32_t)i; in bcj_powerpc()
170 instr &= 0x03FFFFFC; in bcj_powerpc()
171 instr |= 0x48000001; in bcj_powerpc()
172 put_unaligned_be32(instr, buf + i); in bcj_powerpc()
217 uint64_t instr; in bcj_ia64() local
230 instr = 0; in bcj_ia64()
[all …]
/Linux-v4.19/arch/powerpc/kernel/
Dalign.c111 unsigned int instr) in emulate_spe() argument
124 instr = (instr >> 1) & 0x1f; in emulate_spe()
129 nb = spe_aligninfo[instr].len; in emulate_spe()
130 flags = spe_aligninfo[instr].flags; in emulate_spe()
149 switch (instr) { in emulate_spe()
194 switch (instr) { in emulate_spe()
297 unsigned int instr; in fix_alignment() local
307 if (unlikely(__get_user(instr, (unsigned int __user *)regs->nip))) in fix_alignment()
313 instr = swab32(instr); in fix_alignment()
317 if ((instr >> 26) == 0x4) { in fix_alignment()
[all …]
/Linux-v4.19/drivers/crypto/cavium/nitrox/
Dnitrox_reqmgr.c447 memcpy(ent, &sr->instr, cmdq->instr_size); in post_se_instr()
595 sr->instr.dptr0 = cpu_to_be64(sr->in.dma); in nitrox_process_se_request()
598 sr->instr.ih.value = 0; in nitrox_process_se_request()
599 sr->instr.ih.s.g = 1; in nitrox_process_se_request()
600 sr->instr.ih.s.gsz = sr->in.map_bufs_cnt; in nitrox_process_se_request()
601 sr->instr.ih.s.ssz = sr->out.map_bufs_cnt; in nitrox_process_se_request()
602 sr->instr.ih.s.fsz = FDATA_SIZE + sizeof(struct gphdr); in nitrox_process_se_request()
603 sr->instr.ih.s.tlen = sr->instr.ih.s.fsz + sr->in.total_bytes; in nitrox_process_se_request()
604 sr->instr.ih.value = cpu_to_be64(sr->instr.ih.value); in nitrox_process_se_request()
607 sr->instr.irh.value[0] = 0; in nitrox_process_se_request()
[all …]
/Linux-v4.19/arch/arm/kernel/
Dtraps.c422 int call_undef_hook(struct pt_regs *regs, unsigned int instr) in call_undef_hook() argument
426 int (*fn)(struct pt_regs *regs, unsigned int instr) = NULL; in call_undef_hook()
430 if ((instr & hook->instr_mask) == hook->instr_val && in call_undef_hook()
435 return fn ? fn(regs, instr) : 1; in call_undef_hook()
440 unsigned int instr; in do_undefinstr() local
450 instr = __mem_to_opcode_thumb16(((u16 *)pc)[0]); in do_undefinstr()
451 if (is_wide_instruction(instr)) { in do_undefinstr()
454 instr = __opcode_thumb32_compose(instr, inst2); in do_undefinstr()
458 instr = __mem_to_opcode_arm(*(u32 *) pc); in do_undefinstr()
460 if (get_user(instr, (u16 __user *)pc)) in do_undefinstr()
[all …]
Dswp_emulate.c164 static int swp_handler(struct pt_regs *regs, unsigned int instr) in swp_handler() argument
171 res = arm_check_condition(instr, regs->ARM_cpsr); in swp_handler()
192 address = regs->uregs[EXTRACT_REG_NUM(instr, RN_OFFSET)]; in swp_handler()
193 data = regs->uregs[EXTRACT_REG_NUM(instr, RT2_OFFSET)]; in swp_handler()
194 destreg = EXTRACT_REG_NUM(instr, RT_OFFSET); in swp_handler()
196 type = instr & TYPE_SWPB; in swp_handler()
199 EXTRACT_REG_NUM(instr, RN_OFFSET), address, in swp_handler()
200 destreg, EXTRACT_REG_NUM(instr, RT2_OFFSET), data); in swp_handler()
/Linux-v4.19/drivers/mtd/nand/raw/
Dvf610_nfc.c374 const struct nand_op_instr *instr; in vf610_nfc_cmd() local
386 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd()
387 if (!instr) in vf610_nfc_cmd()
390 if (instr && instr->type == NAND_OP_CMD_INSTR) { in vf610_nfc_cmd()
391 cmd2 |= instr->ctx.cmd.opcode << CMD_BYTE1_SHIFT; in vf610_nfc_cmd()
394 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd()
397 if (instr && instr->type == NAND_OP_ADDR_INSTR) { in vf610_nfc_cmd()
402 u8 val = instr->ctx.addr.addrs[i]; in vf610_nfc_cmd()
411 instr = vf610_get_next_instr(subop, &op_id); in vf610_nfc_cmd()
414 if (instr && instr->type == NAND_OP_DATA_OUT_INSTR) { in vf610_nfc_cmd()
[all …]
/Linux-v4.19/arch/x86/kernel/
Dalternative.c333 static void __init_or_module noinline optimize_nops(struct alt_instr *a, u8 *instr) in optimize_nops() argument
339 if (instr[i] != 0x90) in optimize_nops()
344 add_nops(instr + (a->instrlen - a->padlen), a->padlen); in optimize_nops()
347 DUMP_BYTES(instr, a->instrlen, "%px: [%d:%d) optimized NOPs: ", in optimize_nops()
348 instr, a->instrlen - a->padlen, a->padlen); in optimize_nops()
365 u8 *instr, *replacement; in apply_alternatives() local
381 instr = (u8 *)&a->instr_offset + a->instr_offset; in apply_alternatives()
387 optimize_nops(a, instr); in apply_alternatives()
395 instr, a->instrlen, in apply_alternatives()
398 DUMP_BYTES(instr, a->instrlen, "%px: old_insn: ", instr); in apply_alternatives()
[all …]
/Linux-v4.19/arch/arm/lib/
Dbitops.h6 .macro bitop, name, instr
22 \instr r2, r2, r3
31 .macro testop, name, instr, store
49 \instr r2, r2, r3 @ toggle bit
61 .macro bitop, name, instr
72 \instr r2, r2, r3
88 .macro testop, name, instr, store
99 \instr r2, r2, r0, lsl r3

12345678