Home
last modified time | relevance | path

Searched refs:branch (Results 1 – 25 of 255) sorted by relevance

1234567891011

/linux-6.1.9/tools/perf/util/intel-pt-decoder/
Dintel-pt-insn-decoder.c31 enum intel_pt_insn_branch branch = INTEL_PT_BR_NO_BRANCH; in intel_pt_insn_decoder() local
39 intel_pt_insn->branch = INTEL_PT_BR_NO_BRANCH; in intel_pt_insn_decoder()
52 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
61 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
66 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
70 branch = INTEL_PT_BR_CONDITIONAL; in intel_pt_insn_decoder()
78 branch = INTEL_PT_BR_CONDITIONAL; in intel_pt_insn_decoder()
85 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
89 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
93 branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
[all …]
/linux-6.1.9/arch/x86/include/asm/
Djump_label.h25 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
30 : : "i" (key), "i" (2 | branch) : : l_yes); in arch_static_branch()
39 static __always_inline bool arch_static_branch(struct static_key * const key, const bool branch) in arch_static_branch() argument
44 : : "i" (key), "i" (branch) : : l_yes); in arch_static_branch()
53 …atic __always_inline bool arch_static_branch_jump(struct static_key * const key, const bool branch) in arch_static_branch_jump() argument
58 : : "i" (key), "i" (branch) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/drivers/edac/
Di7300_edac.c67 #define to_channel(ch, branch) ((((branch)) << 1) | (ch)) argument
69 #define to_csrow(slot, ch, branch) \ argument
70 (to_channel(ch, branch) | ((slot) << 2))
411 unsigned branch, channel, bank, rank, cas, ras; in i7300_process_fbd_error() local
428 branch = (GET_FBD_FAT_IDX(error_reg) == 2) ? 1 : 0; in i7300_process_fbd_error()
450 branch, -1, rank, in i7300_process_fbd_error()
464 branch = (GET_FBD_NF_IDX(error_reg) == 2) ? 1 : 0; in i7300_process_fbd_error()
482 channel = (branch << 1); in i7300_process_fbd_error()
498 branch >> 1, channel % 2, rank, in i7300_process_fbd_error()
586 int slot, int ch, int branch, in decode_mtr() argument
[all …]
/linux-6.1.9/drivers/clk/nxp/
Dclk-lpc18xx-ccu.c202 static void lpc18xx_ccu_register_branch_gate_div(struct lpc18xx_clk_branch *branch, in lpc18xx_ccu_register_branch_gate_div() argument
210 if (branch->flags & CCU_BRANCH_HAVE_DIV2) { in lpc18xx_ccu_register_branch_gate_div()
215 div->reg = branch->offset + reg_base; in lpc18xx_ccu_register_branch_gate_div()
224 branch->gate.reg = branch->offset + reg_base; in lpc18xx_ccu_register_branch_gate_div()
225 branch->gate.bit_idx = 0; in lpc18xx_ccu_register_branch_gate_div()
227 branch->clk = clk_register_composite(NULL, branch->name, &parent, 1, in lpc18xx_ccu_register_branch_gate_div()
230 &branch->gate.hw, &lpc18xx_ccu_gate_ops, 0); in lpc18xx_ccu_register_branch_gate_div()
231 if (IS_ERR(branch->clk)) { in lpc18xx_ccu_register_branch_gate_div()
233 pr_warn("%s: failed to register %s\n", __func__, branch->name); in lpc18xx_ccu_register_branch_gate_div()
238 switch (branch->offset) { in lpc18xx_ccu_register_branch_gate_div()
[all …]
/linux-6.1.9/tools/perf/util/
Dintel-bts.c80 struct branch { struct
89 struct branch *branch; in intel_bts_dump() argument
90 size_t i, pos = 0, br_sz = sizeof(struct branch), sz; in intel_bts_dump()
109 branch = (struct branch *)buf; in intel_bts_dump()
111 le64_to_cpu(branch->from), in intel_bts_dump()
112 le64_to_cpu(branch->to), in intel_bts_dump()
113 le64_to_cpu(branch->misc) & 0x10 ? in intel_bts_dump()
239 for (; offs < len_a; offs += sizeof(struct branch)) { in intel_bts_find_overlap()
273 struct branch *branch) in intel_bts_synth_branch_sample() argument
284 sample.ip = le64_to_cpu(branch->from); in intel_bts_synth_branch_sample()
[all …]
/linux-6.1.9/scripts/tracing/
Ddraw_functrace.py70 def __toString(self, branch, lastChild): argument
72 s = "%s----%s (%s)\n" % (branch, self._func, self._time)
74 s = "%s----%s\n" % (branch, self._func)
78 branch = branch[:-1] + " "
81 s += "%s" % self._children[i].__toString(branch +\
84 s += "%s" % self._children[i].__toString(branch +\
/linux-6.1.9/Documentation/admin-guide/hw-vuln/
Dspectre.rst6 Spectre is a class of side channel attacks that exploit branch prediction
18 use branch prediction and speculative execution.
55 buffers, and branch predictors. Malicious software may be able to
70 of speculative execution that bypasses conditional branch instructions
92 The branch target injection attack takes advantage of speculative
94 branch predictors inside the processor used to guess the target of
103 branches in the victim to gadget code by poisoning the branch target
104 buffer of a CPU used for predicting indirect branch addresses. Such
106 with the address offset of the indirect branch under the attacker's
107 control. Since the branch prediction on impacted hardware does not
[all …]
/linux-6.1.9/arch/csky/include/asm/
Djump_label.h13 bool branch) in arch_static_branch() argument
22 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch()
30 bool branch) in arch_static_branch_jump() argument
39 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch_jump()
/linux-6.1.9/arch/arm64/include/asm/
Djump_label.h19 bool branch) in arch_static_branch() argument
28 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch()
36 bool branch) in arch_static_branch_jump() argument
45 : : "i"(&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/parisc/include/asm/
Djump_label.h13 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
21 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
28 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
36 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/riscv/include/asm/
Djump_label.h18 const bool branch) in arch_static_branch() argument
31 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch()
39 const bool branch) in arch_static_branch_jump() argument
52 : : "i"(&((char *)key)[branch]) : : label); in arch_static_branch_jump()
/linux-6.1.9/arch/xtensa/include/asm/
Djump_label.h14 bool branch) in arch_static_branch() argument
21 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
29 bool branch) in arch_static_branch_jump() argument
49 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/s390/include/asm/
Djump_label.h26 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
34 : : JUMP_LABEL_STATIC_KEY_CONSTRAINT (key), "i" (branch) : : label); in arch_static_branch()
40 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
48 : : JUMP_LABEL_STATIC_KEY_CONSTRAINT (key), "i" (branch) : : label); in arch_static_branch_jump()
/linux-6.1.9/arch/sparc/include/asm/
Djump_label.h11 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
20 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
27 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
36 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/arc/include/asm/
Djump_label.h32 bool branch) in arch_static_branch() argument
40 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
48 bool branch) in arch_static_branch_jump() argument
56 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/arm/include/asm/
Djump_label.h12 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
19 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
26 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
33 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/arch/powerpc/include/asm/
Djump_label.h18 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
26 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
33 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
41 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/Documentation/staging/
Dstatic-keys.rst48 The static_branch_unlikely() branch will be generated into the code with as little
56 Currently, tracepoints are implemented using a conditional branch. The
78 the branch site to change the branch direction.
80 For example, if we have a simple branch that is disabled by default::
83 printk("I am the true branch\n");
87 straight-line code path. When the branch is 'flipped', we will patch the
89 out-of-line true branch. Thus, changing branch direction is expensive but
90 branch selection is basically 'free'. That is the basic tradeoff of this
138 The branch(es) can then be switched via reference counts::
144 Thus, 'static_branch_inc()' means 'make the branch true', and
[all …]
/linux-6.1.9/arch/mips/include/asm/
Djump_label.h37 static __always_inline bool arch_static_branch(struct static_key *key, bool branch) in arch_static_branch() argument
44 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch()
51 static __always_inline bool arch_static_branch_jump(struct static_key *key, bool branch) in arch_static_branch_jump() argument
57 : : "i" (&((char *)key)[branch]) : : l_yes); in arch_static_branch_jump()
/linux-6.1.9/tools/perf/arch/x86/tests/
Dinsn-x86.c99 int op, branch, ret; in test_data_item() local
116 branch = get_branch(dat->expected_branch_str); in test_data_item()
129 if ((int)intel_pt_insn.branch != branch) { in test_data_item()
131 intel_pt_insn.branch, branch, dat->asm_rep); in test_data_item()
Dgen-insn-x86-dat.awk14 branch = ""
44 printf "}, %d, %s, \"%s\", \"%s\",", len, rel, op, branch
47 branch = ""
62 branch = $i
/linux-6.1.9/include/linux/
Djump_label.h471 bool branch; \
473 branch = !arch_static_branch(&(x)->key, true); \
475 branch = !arch_static_branch_jump(&(x)->key, true); \
477 branch = ____wrong_branch_error(); \
478 likely_notrace(branch); \
483 bool branch; \
485 branch = arch_static_branch_jump(&(x)->key, false); \
487 branch = arch_static_branch(&(x)->key, false); \
489 branch = ____wrong_branch_error(); \
490 unlikely_notrace(branch); \
/linux-6.1.9/tools/bootconfig/scripts/
Dbconf2ftrace.sh184 branch=$1.$2.$3
198 xbc_get_val ${branch}.probes | while read line; do
203 run_cmd "echo '`compose_synth $3 ${branch}.fields`' >> $TRACEFS/synthetic_events"
207 set_value_of ${branch}.filter ${eventdir}/filter
208 set_array_of ${branch}.actions ${eventdir}/trigger
210 setup_histograms ${branch}.hist ${eventdir}/trigger
212 if xbc_has_key ${branch}.enable; then
/linux-6.1.9/tools/perf/tests/shell/
Dtest_brstack.sh16 if ! perf record -o- --no-buildid --branch-filter any,save_type,u -- true > /dev/null 2>&1 ; then
41 if ((cnt++) % 3) /* branch (cond) */
53 } /* branch (uncond) */
65 perf record -o $TMPDIR/perf.data --branch-filter any,save_type,u -- $TMPDIR/a.out > /dev/null 2>&1
97 …perf record -o $TMPDIR/perf.data --branch-filter $filter,save_type,u -- $TMPDIR/a.out > /dev/null …
/linux-6.1.9/tools/perf/tests/attr/
DREADME36 perf record -b kill (test-record-branch-any)
37 perf record -j any kill (test-record-branch-filter-any)
38 perf record -j any_call kill (test-record-branch-filter-any_call)
39 perf record -j any_ret kill (test-record-branch-filter-any_ret)
40 perf record -j hv kill (test-record-branch-filter-hv)
41 perf record -j ind_call kill (test-record-branch-filter-ind_call)
42 perf record -j k kill (test-record-branch-filter-k)
43 perf record -j u kill (test-record-branch-filter-u)

1234567891011