Home
last modified time | relevance | path

Searched refs:cpsr (Results 1 - 25 of 62) sorted by relevance

123

/kernel/linux/linux-5.10/arch/arm/probes/
H A Ddecode.c84 static unsigned long __kprobes __check_eq(unsigned long cpsr) in __check_eq() argument
86 return cpsr & PSR_Z_BIT; in __check_eq()
89 static unsigned long __kprobes __check_ne(unsigned long cpsr) in __check_ne() argument
91 return (~cpsr) & PSR_Z_BIT; in __check_ne()
94 static unsigned long __kprobes __check_cs(unsigned long cpsr) in __check_cs() argument
96 return cpsr & PSR_C_BIT; in __check_cs()
99 static unsigned long __kprobes __check_cc(unsigned long cpsr) in __check_cc() argument
101 return (~cpsr) & PSR_C_BIT; in __check_cc()
104 static unsigned long __kprobes __check_mi(unsigned long cpsr) in __check_mi() argument
106 return cpsr in __check_mi()
109 __check_pl(unsigned long cpsr) __check_pl() argument
114 __check_vs(unsigned long cpsr) __check_vs() argument
119 __check_vc(unsigned long cpsr) __check_vc() argument
124 __check_hi(unsigned long cpsr) __check_hi() argument
130 __check_ls(unsigned long cpsr) __check_ls() argument
136 __check_ge(unsigned long cpsr) __check_ge() argument
142 __check_lt(unsigned long cpsr) __check_lt() argument
148 __check_gt(unsigned long cpsr) __check_gt() argument
155 __check_le(unsigned long cpsr) __check_le() argument
162 __check_al(unsigned long cpsr) __check_al() argument
[all...]
H A Ddecode-thumb.h17 #define in_it_block(cpsr) ((cpsr & 0x06000c00) != 0x00000000)
24 #define current_cond(cpsr) ((cpsr >> 12) & 0xf)
H A Ddecode.h41 long cpsr = regs->ARM_cpsr; in bx_write_pc() local
43 cpsr |= PSR_T_BIT; in bx_write_pc()
46 cpsr &= ~PSR_T_BIT; in bx_write_pc()
49 regs->ARM_cpsr = cpsr; in bx_write_pc()
/kernel/linux/linux-6.6/arch/arm/probes/
H A Ddecode.c84 static unsigned long __kprobes __check_eq(unsigned long cpsr) in __check_eq() argument
86 return cpsr & PSR_Z_BIT; in __check_eq()
89 static unsigned long __kprobes __check_ne(unsigned long cpsr) in __check_ne() argument
91 return (~cpsr) & PSR_Z_BIT; in __check_ne()
94 static unsigned long __kprobes __check_cs(unsigned long cpsr) in __check_cs() argument
96 return cpsr & PSR_C_BIT; in __check_cs()
99 static unsigned long __kprobes __check_cc(unsigned long cpsr) in __check_cc() argument
101 return (~cpsr) & PSR_C_BIT; in __check_cc()
104 static unsigned long __kprobes __check_mi(unsigned long cpsr) in __check_mi() argument
106 return cpsr in __check_mi()
109 __check_pl(unsigned long cpsr) __check_pl() argument
114 __check_vs(unsigned long cpsr) __check_vs() argument
119 __check_vc(unsigned long cpsr) __check_vc() argument
124 __check_hi(unsigned long cpsr) __check_hi() argument
130 __check_ls(unsigned long cpsr) __check_ls() argument
136 __check_ge(unsigned long cpsr) __check_ge() argument
142 __check_lt(unsigned long cpsr) __check_lt() argument
148 __check_gt(unsigned long cpsr) __check_gt() argument
155 __check_le(unsigned long cpsr) __check_le() argument
162 __check_al(unsigned long cpsr) __check_al() argument
[all...]
H A Ddecode-thumb.h17 #define in_it_block(cpsr) ((cpsr & 0x06000c00) != 0x00000000)
24 #define current_cond(cpsr) ((cpsr >> 12) & 0xf)
H A Ddecode.h41 long cpsr = regs->ARM_cpsr; in bx_write_pc() local
43 cpsr |= PSR_T_BIT; in bx_write_pc()
46 cpsr &= ~PSR_T_BIT; in bx_write_pc()
49 regs->ARM_cpsr = cpsr; in bx_write_pc()
/kernel/linux/linux-5.10/arch/arm64/kvm/hyp/
H A Daarch32.c49 unsigned long cpsr; in kvm_condition_valid32() local
62 cpsr = *vcpu_cpsr(vcpu); in kvm_condition_valid32()
68 it = ((cpsr >> 8) & 0xFC) | ((cpsr >> 25) & 0x3); in kvm_condition_valid32()
78 cpsr_cond = cpsr >> 28; in kvm_condition_valid32()
99 unsigned long cpsr = *vcpu_cpsr(vcpu); in kvm_adjust_itstate() local
100 bool is_arm = !(cpsr & PSR_AA32_T_BIT); in kvm_adjust_itstate()
102 if (is_arm || !(cpsr & PSR_AA32_IT_MASK)) in kvm_adjust_itstate()
105 cond = (cpsr & 0xe000) >> 13; in kvm_adjust_itstate()
106 itbits = (cpsr in kvm_adjust_itstate()
[all...]
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/
H A Daarch32.c49 unsigned long cpsr; in kvm_condition_valid32() local
62 cpsr = *vcpu_cpsr(vcpu); in kvm_condition_valid32()
68 it = ((cpsr >> 8) & 0xFC) | ((cpsr >> 25) & 0x3); in kvm_condition_valid32()
78 cpsr_cond = cpsr >> 28; in kvm_condition_valid32()
99 unsigned long cpsr = *vcpu_cpsr(vcpu); in kvm_adjust_itstate() local
100 bool is_arm = !(cpsr & PSR_AA32_T_BIT); in kvm_adjust_itstate()
102 if (is_arm || !(cpsr & PSR_AA32_IT_MASK)) in kvm_adjust_itstate()
105 cond = (cpsr & 0xe000) >> 13; in kvm_adjust_itstate()
106 itbits = (cpsr in kvm_adjust_itstate()
[all...]
/kernel/linux/linux-5.10/arch/arm/probes/kprobes/
H A Dactions-arm.c170 unsigned long cpsr = regs->ARM_cpsr; in emulate_rd12rn16rm0rs8_rwflags() local
173 "msr cpsr_fs, %[cpsr] \n\t" in emulate_rd12rn16rm0rs8_rwflags()
175 "mrs %[cpsr], cpsr \n\t" in emulate_rd12rn16rm0rs8_rwflags()
176 : "=r" (rdv), [cpsr] "=r" (cpsr) in emulate_rd12rn16rm0rs8_rwflags()
178 "1" (cpsr), [fn] "r" (asi->insn_fn) in emulate_rd12rn16rm0rs8_rwflags()
186 regs->ARM_cpsr = (regs->ARM_cpsr & ~APSR_MASK) | (cpsr & APSR_MASK); in emulate_rd12rn16rm0rs8_rwflags()
200 unsigned long cpsr = regs->ARM_cpsr; in emulate_rd12rn16rm0_rwflags_nopc() local
203 "msr cpsr_fs, %[cpsr] \ in emulate_rd12rn16rm0_rwflags_nopc()
230 unsigned long cpsr = regs->ARM_cpsr; emulate_rd16rn12rm0rs8_rwflags_nopc() local
280 unsigned long cpsr = regs->ARM_cpsr; emulate_rdlo12rdhi16rn0rm8_rwflags_nopc() local
[all...]
H A Dactions-thumb.c221 unsigned long cpsr = regs->ARM_cpsr; in t32_emulate_rd8rn16rm0_rwflags() local
224 "msr cpsr_fs, %[cpsr] \n\t" in t32_emulate_rd8rn16rm0_rwflags()
226 "mrs %[cpsr], cpsr \n\t" in t32_emulate_rd8rn16rm0_rwflags()
227 : "=r" (rdv), [cpsr] "=r" (cpsr) in t32_emulate_rd8rn16rm0_rwflags()
229 "1" (cpsr), [fn] "r" (asi->insn_fn) in t32_emulate_rd8rn16rm0_rwflags()
234 regs->ARM_cpsr = (regs->ARM_cpsr & ~APSR_MASK) | (cpsr & APSR_MASK); in t32_emulate_rd8rn16rm0_rwflags()
388 unsigned long cpsr = regs->ARM_cpsr; in t16_simulate_it() local
389 cpsr in t16_simulate_it()
475 unsigned long cpsr = t16_emulate_loregs(insn, asi, regs); t16_emulate_loregs_noitrwflags() local
490 unsigned long cpsr = regs->ARM_cpsr; t16_emulate_hiregs() local
[all...]
H A Dtest-core.c1010 static unsigned long test_check_cc(int cc, unsigned long cpsr) in test_check_cc() argument
1012 int ret = arm_check_condition(cc << 28, cpsr); in test_check_cc()
1023 unsigned long cpsr; in test_context_cpsr() local
1028 cpsr = (scenario & 0xf) << 28; /* N,Z,C,V flags */ in test_context_cpsr()
1029 cpsr |= (scenario & 0xf) << 16; /* GE flags */ in test_context_cpsr()
1030 cpsr |= (scenario & 0x1) << 27; /* Toggle Q flag */ in test_context_cpsr()
1036 probe_should_run = test_check_cc(cc, cpsr) != 0; in test_context_cpsr()
1044 probe_should_run = test_check_cc(cc, cpsr) != 0; in test_context_cpsr()
1064 cpsr |= cond_base << 13; /* ITSTATE<7:5> */ in test_context_cpsr()
1065 cpsr | in test_context_cpsr()
[all...]
/kernel/linux/linux-6.6/arch/arm/probes/kprobes/
H A Dactions-arm.c170 unsigned long cpsr = regs->ARM_cpsr; in emulate_rd12rn16rm0rs8_rwflags() local
173 "msr cpsr_fs, %[cpsr] \n\t" in emulate_rd12rn16rm0rs8_rwflags()
175 "mrs %[cpsr], cpsr \n\t" in emulate_rd12rn16rm0rs8_rwflags()
176 : "=r" (rdv), [cpsr] "=r" (cpsr) in emulate_rd12rn16rm0rs8_rwflags()
178 "1" (cpsr), [fn] "r" (asi->insn_fn) in emulate_rd12rn16rm0rs8_rwflags()
186 regs->ARM_cpsr = (regs->ARM_cpsr & ~APSR_MASK) | (cpsr & APSR_MASK); in emulate_rd12rn16rm0rs8_rwflags()
200 unsigned long cpsr = regs->ARM_cpsr; in emulate_rd12rn16rm0_rwflags_nopc() local
203 "msr cpsr_fs, %[cpsr] \ in emulate_rd12rn16rm0_rwflags_nopc()
230 unsigned long cpsr = regs->ARM_cpsr; emulate_rd16rn12rm0rs8_rwflags_nopc() local
280 unsigned long cpsr = regs->ARM_cpsr; emulate_rdlo12rdhi16rn0rm8_rwflags_nopc() local
[all...]
H A Dactions-thumb.c221 unsigned long cpsr = regs->ARM_cpsr; in t32_emulate_rd8rn16rm0_rwflags() local
224 "msr cpsr_fs, %[cpsr] \n\t" in t32_emulate_rd8rn16rm0_rwflags()
226 "mrs %[cpsr], cpsr \n\t" in t32_emulate_rd8rn16rm0_rwflags()
227 : "=r" (rdv), [cpsr] "=r" (cpsr) in t32_emulate_rd8rn16rm0_rwflags()
229 "1" (cpsr), [fn] "r" (asi->insn_fn) in t32_emulate_rd8rn16rm0_rwflags()
234 regs->ARM_cpsr = (regs->ARM_cpsr & ~APSR_MASK) | (cpsr & APSR_MASK); in t32_emulate_rd8rn16rm0_rwflags()
388 unsigned long cpsr = regs->ARM_cpsr; in t16_simulate_it() local
389 cpsr in t16_simulate_it()
477 unsigned long cpsr = t16_emulate_loregs(insn, asi, regs); t16_emulate_loregs_noitrwflags() local
492 unsigned long cpsr = regs->ARM_cpsr; t16_emulate_hiregs() local
[all...]
H A Dtest-core.c1010 static unsigned long test_check_cc(int cc, unsigned long cpsr) in test_check_cc() argument
1012 int ret = arm_check_condition(cc << 28, cpsr); in test_check_cc()
1023 unsigned long cpsr; in test_context_cpsr() local
1028 cpsr = (scenario & 0xf) << 28; /* N,Z,C,V flags */ in test_context_cpsr()
1029 cpsr |= (scenario & 0xf) << 16; /* GE flags */ in test_context_cpsr()
1030 cpsr |= (scenario & 0x1) << 27; /* Toggle Q flag */ in test_context_cpsr()
1036 probe_should_run = test_check_cc(cc, cpsr) != 0; in test_context_cpsr()
1044 probe_should_run = test_check_cc(cc, cpsr) != 0; in test_context_cpsr()
1064 cpsr |= cond_base << 13; /* ITSTATE<7:5> */ in test_context_cpsr()
1065 cpsr | in test_context_cpsr()
[all...]
/kernel/linux/linux-5.10/drivers/firmware/efi/libstub/
H A Darm32-stub.c14 static void get_cpu_state(u32 *cpsr, u32 *sctlr) in get_cpu_state() argument
16 asm("mrs %0, cpsr" : "=r"(*cpsr)); in get_cpu_state()
17 if ((*cpsr & MODE_MASK) == HYP_MODE) in get_cpu_state()
26 u32 cpsr, sctlr; in check_platform_features() local
29 get_cpu_state(&cpsr, &sctlr); in check_platform_features()
32 ((cpsr & MODE_MASK) == HYP_MODE) ? "HYP" : "SVC", in check_platform_features()
43 efi_entry_state->cpsr_before_ebs = cpsr; in check_platform_features()
/kernel/linux/linux-5.10/arch/arm/include/asm/
H A Dptrace.h175 static inline unsigned long it_advance(unsigned long cpsr) in it_advance() argument
177 if ((cpsr & 0x06000400) == 0) { in it_advance()
179 cpsr &= ~PSR_IT_MASK; in it_advance()
183 unsigned long it = cpsr & mask; in it_advance()
187 cpsr &= ~mask; in it_advance()
188 cpsr |= it; in it_advance()
190 return cpsr; in it_advance()
/kernel/linux/linux-6.6/arch/arm/include/asm/
H A Dptrace.h178 static inline unsigned long it_advance(unsigned long cpsr) in it_advance() argument
180 if ((cpsr & 0x06000400) == 0) { in it_advance()
182 cpsr &= ~PSR_IT_MASK; in it_advance()
186 unsigned long it = cpsr & mask; in it_advance()
190 cpsr &= ~mask; in it_advance()
191 cpsr |= it; in it_advance()
193 return cpsr; in it_advance()
/kernel/linux/linux-6.6/drivers/firmware/efi/libstub/
H A Darm32-stub.c14 static void get_cpu_state(u32 *cpsr, u32 *sctlr) in get_cpu_state() argument
16 asm("mrs %0, cpsr" : "=r"(*cpsr)); in get_cpu_state()
17 if ((*cpsr & MODE_MASK) == HYP_MODE) in get_cpu_state()
26 u32 cpsr, sctlr; in check_platform_features() local
29 get_cpu_state(&cpsr, &sctlr); in check_platform_features()
32 ((cpsr & MODE_MASK) == HYP_MODE) ? "HYP" : "SVC", in check_platform_features()
43 efi_entry_state->cpsr_before_ebs = cpsr; in check_platform_features()
/kernel/linux/linux-5.10/arch/arm64/kvm/
H A Dtrace_arm.h119 unsigned long cpsr),
120 TP_ARGS(vcpu_pc, instr, cpsr),
125 __field( unsigned long, cpsr )
131 __entry->cpsr = cpsr;
134 TP_printk("Emulate MMIO at: 0x%016lx (instr: %08lx, cpsr: %08lx)",
135 __entry->vcpu_pc, __entry->instr, __entry->cpsr)
H A Dinject_fault.c125 unsigned long cpsr = *vcpu_cpsr(vcpu); in inject_abt64() local
144 if (is_aarch32 || (cpsr & PSR_MODE_MASK) == PSR_MODE_EL0t) in inject_abt64()
/kernel/linux/linux-5.10/arch/arm/kernel/
H A Dsignal.c369 unsigned long cpsr = regs->ARM_cpsr & ~(PSR_f | PSR_E_BIT); in setup_return() local
381 cpsr |= PSR_ENDSTATE; in setup_return()
387 cpsr = (cpsr & ~MODE_MASK) | USR_MODE; in setup_return()
408 cpsr &= ~PSR_IT_MASK; in setup_return()
411 cpsr |= PSR_T_BIT; in setup_return()
413 cpsr &= ~PSR_T_BIT; in setup_return()
452 if (cpsr & MODE32_BIT) { in setup_return()
482 regs->ARM_cpsr = cpsr; in setup_return()
H A Dhyp-stub.S30 mrs \reg1, cpsr
80 mrs r4, cpsr
/kernel/linux/linux-6.6/arch/arm/kernel/
H A Dsignal.c328 unsigned long cpsr = regs->ARM_cpsr & ~(PSR_f | PSR_E_BIT); in setup_return() local
340 cpsr |= PSR_ENDSTATE; in setup_return()
346 cpsr = (cpsr & ~MODE_MASK) | USR_MODE; in setup_return()
367 cpsr &= ~PSR_IT_MASK; in setup_return()
370 cpsr |= PSR_T_BIT; in setup_return()
372 cpsr &= ~PSR_T_BIT; in setup_return()
411 if (cpsr & MODE32_BIT) { in setup_return()
441 regs->ARM_cpsr = cpsr; in setup_return()
H A Dhyp-stub.S32 mrs \reg1, cpsr
82 mrs r4, cpsr
/kernel/linux/linux-6.6/arch/arm64/kvm/
H A Dtrace_arm.h120 unsigned long cpsr),
121 TP_ARGS(vcpu_pc, instr, cpsr),
126 __field( unsigned long, cpsr )
132 __entry->cpsr = cpsr;
135 TP_printk("Emulate MMIO at: 0x%016lx (instr: %08lx, cpsr: %08lx)",
136 __entry->vcpu_pc, __entry->instr, __entry->cpsr)

Completed in 14 milliseconds

123