Searched refs:pred (Results 1 - 20 of 20) sorted by relevance

/linux-4.1.27/arch/ia64/include/asm/native/
H A Dinst.h63 #define MOV_FROM_IPSR(pred, reg) \
64 (pred) mov reg = cr.ipsr
76 #define MOV_FROM_PSR(pred, reg, clob) \
77 (pred) mov reg = psr \
80 #define MOV_FROM_ITC(pred, pred_clob, reg, clob) \
81 (pred) mov reg = ar.itc \
89 #define MOV_TO_ITIR(pred, reg, clob) \
90 (pred) mov cr.itir = reg \
93 #define MOV_TO_IHA(pred, reg, clob) \
94 (pred) mov cr.iha = reg \
97 #define MOV_TO_IPSR(pred, reg, clob) \
98 (pred) mov cr.ipsr = reg \
101 #define MOV_TO_IFS(pred, reg, clob) \
102 (pred) mov cr.ifs = reg \
114 #define ITC_I(pred, reg, clob) \
115 (pred) itc.i reg \
118 #define ITC_D(pred, reg, clob) \
119 (pred) itc.d reg \
127 #define THASH(pred, reg0, reg1, clob) \
128 (pred) thash reg0 = reg1 \
150 #define SSM_PSR_I(pred, pred_clob, clob) \
151 (pred) ssm psr.i \
155 #define RSM_PSR_I(pred, clob0, clob1) \
156 (pred) rsm psr.i \
H A Dpvchk_inst.h145 /* check whether pred is a predicate register */
146 #define IS_PRED_IN(pred) \
148 (pred) nop 0 \
151 #define IS_PRED_OUT(pred) \
153 cmp.eq pred, p0 = r0, r0 \
156 #define IS_PRED_CLOB(pred) IS_PRED_OUT(pred)
169 #define MOV_FROM_IPSR(pred, reg) \
170 IS_PRED_IN(pred) \
179 #define MOV_FROM_PSR(pred, reg, clob) \
180 IS_PRED_IN(pred) \
183 #define MOV_FROM_ITC(pred, pred_clob, reg, clob) \
184 IS_PRED_IN(pred) \
191 #define MOV_TO_ITIR(pred, reg, clob) \
192 IS_PRED_IN(pred) \
195 #define MOV_TO_IHA(pred, reg, clob) \
196 IS_PRED_IN(pred) \
199 #define MOV_TO_IPSR(pred, reg, clob) \
200 IS_PRED_IN(pred) \
203 #define MOV_TO_IFS(pred, reg, clob) \
204 IS_PRED_IN(pred) \
214 #define ITC_I(pred, reg, clob) \
215 IS_PRED_IN(pred) \
218 #define ITC_D(pred, reg, clob) \
219 IS_PRED_IN(pred) \
227 #define THASH(pred, reg0, reg1, clob) \
228 IS_PRED_IN(pred) \
240 #define SSM_PSR_I(pred, pred_clob, clob) \
241 IS_PRED_IN(pred) \
244 #define RSM_PSR_I(pred, clob0, clob1) \
245 IS_PRED_IN(pred) \
/linux-4.1.27/kernel/trace/
H A Dtrace_events_filter.c148 static int filter_pred_##type(struct filter_pred *pred, void *event) \
150 type *addr = (type *)(event + pred->offset); \
151 type val = (type)pred->val; \
154 switch (pred->op) { \
174 return !!match == !pred->not; \
178 static int filter_pred_##size(struct filter_pred *pred, void *event) \
180 u##size *addr = (u##size *)(event + pred->offset); \
181 u##size val = (u##size)pred->val; \
184 match = (val == *addr) ^ pred->not; \
204 static int filter_pred_string(struct filter_pred *pred, void *event) filter_pred_string() argument
206 char *addr = (char *)(event + pred->offset); filter_pred_string()
209 cmp = pred->regex.match(addr, &pred->regex, pred->regex.field_len); filter_pred_string()
211 match = cmp ^ pred->not; filter_pred_string()
217 static int filter_pred_pchar(struct filter_pred *pred, void *event) filter_pred_pchar() argument
219 char **addr = (char **)(event + pred->offset); filter_pred_pchar()
223 cmp = pred->regex.match(*addr, &pred->regex, len); filter_pred_pchar()
225 match = cmp ^ pred->not; filter_pred_pchar()
240 static int filter_pred_strloc(struct filter_pred *pred, void *event) filter_pred_strloc() argument
242 u32 str_item = *(u32 *)(event + pred->offset); filter_pred_strloc()
248 cmp = pred->regex.match(addr, &pred->regex, str_len); filter_pred_strloc()
250 match = cmp ^ pred->not; filter_pred_strloc()
255 static int filter_pred_none(struct filter_pred *pred, void *event) filter_pred_none() argument
353 static void filter_build_regex(struct filter_pred *pred) filter_build_regex() argument
355 struct regex *r = &pred->regex; filter_build_regex()
360 if (pred->op == OP_GLOB) { filter_build_regex()
381 pred->not ^= not; filter_build_regex()
391 get_pred_parent(struct filter_pred *pred, struct filter_pred *preds, get_pred_parent() argument
394 if (pred->parent & FILTER_PRED_IS_RIGHT) get_pred_parent()
398 pred = &preds[pred->parent & ~FILTER_PRED_IS_RIGHT]; get_pred_parent()
400 return pred; get_pred_parent()
410 struct filter_pred *pred,
417 struct filter_pred *pred = root; walk_pred_tree() local
427 ret = cb(move, pred, &err, data); walk_pred_tree()
435 if (pred->left != FILTER_PRED_INVALID) { walk_pred_tree()
436 pred = &preds[pred->left]; walk_pred_tree()
441 pred = &preds[pred->right]; walk_pred_tree()
446 if (pred == root) walk_pred_tree()
448 pred = get_pred_parent(pred, preds, walk_pred_tree()
449 pred->parent, walk_pred_tree()
469 struct filter_pred *pred; process_ops() local
488 pred = &preds[op->ops[i]]; process_ops()
489 if (!WARN_ON_ONCE(!pred->fn)) process_ops()
490 match = pred->fn(pred, rec); process_ops()
504 static int filter_match_preds_cb(enum move_type move, struct filter_pred *pred, filter_match_preds_cb() argument
513 if (pred->left != FILTER_PRED_INVALID) { filter_match_preds_cb()
515 if (!pred->ops) filter_match_preds_cb()
518 d->match = process_ops(d->preds, pred, d->rec); filter_match_preds_cb()
520 if (!WARN_ON_ONCE(!pred->fn)) filter_match_preds_cb()
521 d->match = pred->fn(pred, d->rec); filter_match_preds_cb()
529 * Optimization: !!match == (pred->op == OP_OR) filter_match_preds_cb()
531 * if ((match && pred->op == OP_OR) || filter_match_preds_cb()
532 * (!match && pred->op == OP_AND)) filter_match_preds_cb()
534 if (!!d->match == (pred->op == OP_OR)) filter_match_preds_cb()
695 struct filter_pred *pred) __push_pred_stack()
702 stack->preds[--index] = pred; __push_pred_stack()
710 struct filter_pred *pred; __pop_pred_stack() local
713 pred = stack->preds[index++]; __pop_pred_stack()
714 if (!pred) __pop_pred_stack()
718 return pred; __pop_pred_stack()
818 struct filter_pred *pred; __alloc_preds() local
833 pred = &filter->preds[i]; __alloc_preds()
834 pred->fn = filter_pred_none; __alloc_preds()
890 struct filter_pred *pred, filter_add_pred()
900 err = filter_set_pred(filter, filter->n_preds, stack, pred); filter_add_pred()
988 struct filter_pred *pred) init_pred()
995 pred->offset = field->offset; init_pred()
997 if (!is_legal_op(field, pred->op)) { init_pred()
1003 filter_build_regex(pred); init_pred()
1007 pred->regex.field_len = field->size; init_pred()
1019 ret = kstrtoll(pred->regex.pattern, 0, &val); init_pred()
1021 ret = kstrtoull(pred->regex.pattern, 0, &val); init_pred()
1026 pred->val = val; init_pred()
1028 fn = select_comparison_fn(pred->op, field->size, init_pred()
1036 if (pred->op == OP_NE) init_pred()
1037 pred->not ^= 1; init_pred()
1039 pred->fn = fn; init_pred()
1349 static struct filter_pred pred; create_pred() local
1351 memset(&pred, 0, sizeof(pred)); create_pred()
1352 pred.op = op; create_pred()
1355 return &pred; create_pred()
1368 strcpy(pred.regex.pattern, operand2); create_pred()
1369 pred.regex.len = strlen(pred.regex.pattern); create_pred()
1370 pred.field = field; create_pred()
1371 return init_pred(ps, field, &pred) ? NULL : &pred; create_pred()
1426 static int check_pred_tree_cb(enum move_type move, struct filter_pred *pred, check_pred_tree_cb() argument
1461 static int count_leafs_cb(enum move_type move, struct filter_pred *pred, count_leafs_cb() argument
1467 (pred->left == FILTER_PRED_INVALID)) count_leafs_cb()
1488 static int fold_pred_cb(enum move_type move, struct filter_pred *pred, fold_pred_cb() argument
1496 if (pred->left != FILTER_PRED_INVALID) fold_pred_cb()
1504 pred->index &= ~FILTER_PRED_FOLD; fold_pred_cb()
1505 root->ops[d->count++] = pred->index; fold_pred_cb()
1537 static int fold_pred_tree_cb(enum move_type move, struct filter_pred *pred, fold_pred_tree_cb() argument
1544 if (!(pred->index & FILTER_PRED_FOLD)) fold_pred_tree_cb()
1547 *err = fold_pred(preds, pred); fold_pred_tree_cb()
1573 struct filter_pred *pred; replace_preds() local
1631 pred = create_pred(ps, call, elt->op, operand1, operand2); replace_preds()
1632 if (!pred) { replace_preds()
1638 err = filter_add_pred(ps, filter, pred, &stack); replace_preds()
1648 pred = __pop_pred_stack(&stack); replace_preds()
1649 if (!pred) replace_preds()
1652 root = pred; replace_preds()
1654 pred = __pop_pred_stack(&stack); replace_preds()
1655 if (WARN_ON(pred)) { replace_preds()
2156 static int ftrace_function_check_pred(struct filter_pred *pred, int leaf) ftrace_function_check_pred() argument
2158 struct ftrace_event_field *field = pred->field; ftrace_function_check_pred()
2166 if ((pred->op != OP_EQ) && (pred->op != OP_NE)) ftrace_function_check_pred()
2176 if (pred->op != OP_OR) ftrace_function_check_pred()
2184 struct filter_pred *pred, ftrace_function_set_filter_cb()
2189 (pred->left != FILTER_PRED_INVALID)) { ftrace_function_set_filter_cb()
2190 *err = ftrace_function_check_pred(pred, 0); ftrace_function_set_filter_cb()
2192 *err = ftrace_function_check_pred(pred, 1); ftrace_function_set_filter_cb()
2196 *err = __ftrace_function_set_filter(pred->op == OP_EQ, ftrace_function_set_filter_cb()
2197 pred->regex.pattern, ftrace_function_set_filter_cb()
2198 pred->regex.len, ftrace_function_set_filter_cb()
2349 static int test_pred_visited_fn(struct filter_pred *pred, void *event) test_pred_visited_fn() argument
2351 struct ftrace_event_field *field = pred->field; test_pred_visited_fn()
2358 static int test_walk_pred_cb(enum move_type move, struct filter_pred *pred, test_walk_pred_cb() argument
2364 (pred->left == FILTER_PRED_INVALID)) { test_walk_pred_cb()
2365 struct ftrace_event_field *field = pred->field; test_walk_pred_cb()
2374 WARN_ON(!pred->fn); test_walk_pred_cb()
2375 pred->fn = test_pred_visited_fn; test_walk_pred_cb()
2419 "Failed, unwanted pred visited for filter %s\n", ftrace_test_event_filter()
694 __push_pred_stack(struct pred_stack *stack, struct filter_pred *pred) __push_pred_stack() argument
888 filter_add_pred(struct filter_parse_state *ps, struct event_filter *filter, struct filter_pred *pred, struct pred_stack *stack) filter_add_pred() argument
986 init_pred(struct filter_parse_state *ps, struct ftrace_event_field *field, struct filter_pred *pred) init_pred() argument
2183 ftrace_function_set_filter_cb(enum move_type move, struct filter_pred *pred, int *err, void *data) ftrace_function_set_filter_cb() argument
H A Dtrace.h1021 typedef int (*filter_pred_fn_t) (struct filter_pred *pred, void *event);
/linux-4.1.27/arch/hexagon/include/asm/
H A Dkgdb.h34 * 32 gpr + sa0/1 + lc0/1 + m0/1 + gp + ugp + pred + pc = 42 total.
/linux-4.1.27/arch/ia64/lib/
H A Dcopy_user.S172 .pred.rel "mutex", p14, p15
209 .pred.rel "mutex", p14, p15
233 #define SWITCH(pred, shift) cmp.eq pred,p0=shift,rshift
234 #define CASE(pred, shift) \
235 (pred) br.cond.spnt .copy_user_bit##shift
286 .pred.rel "mutex", p14, p15
H A Dmemset.S322 .pred.rel "mutex",p_y, p_n
323 .pred.rel "mutex",p_yy, p_nn
H A Dclear_user.S197 .pred.rel "mutex", p6, p7
/linux-4.1.27/arch/x86/kernel/cpu/
H A Dperf_event_intel_lbr.c418 u64 from, to, mis = 0, pred = 0, in_tx = 0, abort = 0; intel_pmu_lbr_read_64() local
427 pred = !mis; intel_pmu_lbr_read_64()
451 cpuc->lbr_entries[out].predicted = pred; intel_pmu_lbr_read_64()
/linux-4.1.27/arch/ia64/kernel/
H A Dminstate.h246 .pred.rel "mutex", pKStk, pUStk
H A Dentry.S715 .pred.rel.mutex pUStk,pKStk
859 .pred.rel.mutex pUStk,pKStk
952 .pred.rel.mutex pUStk,pKStk
H A Divt.S142 .pred.rel "mutex", p6, p7
472 .pred.rel "mutex", p6, p7
H A Dfsys.S234 .pred.rel.mutex p8,p9
H A Dhead.S384 .pred.rel.mutex isBP,isAP
/linux-4.1.27/drivers/md/bcache/
H A Dbtree.c2359 keybuf_pred_fn *pred; member in struct:refill
2377 if (refill->pred(buf, k)) { refill_keybuf_fn()
2407 struct bkey *end, keybuf_pred_fn *pred) bch_refill_keybuf()
2418 refill.pred = pred; bch_refill_keybuf()
2506 keybuf_pred_fn *pred) bch_keybuf_next_rescan()
2520 bch_refill_keybuf(c, buf, end, pred); bch_keybuf_next_rescan()
2406 bch_refill_keybuf(struct cache_set *c, struct keybuf *buf, struct bkey *end, keybuf_pred_fn *pred) bch_refill_keybuf() argument
2503 bch_keybuf_next_rescan(struct cache_set *c, struct keybuf *buf, struct bkey *end, keybuf_pred_fn *pred) bch_keybuf_next_rescan() argument
/linux-4.1.27/arch/powerpc/perf/
H A Dcore-book3s.c429 int r_index, u_index, pred; power_pmu_bhrb_read() local
441 pred = val & BHRB_PREDICTION; power_pmu_bhrb_read()
470 cpuhw->bhrb_entries[u_index].mispred = pred; power_pmu_bhrb_read()
471 cpuhw->bhrb_entries[u_index].predicted = ~pred; power_pmu_bhrb_read()
489 cpuhw->bhrb_entries[u_index].mispred = pred; power_pmu_bhrb_read()
490 cpuhw->bhrb_entries[u_index].predicted = ~pred; power_pmu_bhrb_read()
/linux-4.1.27/drivers/media/platform/s5p-mfc/
H A Dregs-mfc.h65 /* neighbor pixels for intra pred */
/linux-4.1.27/include/media/davinci/
H A Disif.h413 __u8 pred; member in struct:isif_compress
/linux-4.1.27/drivers/net/wireless/brcm80211/brcmsmac/phy/
H A Dphy_cmn.c42 #define MUX(pred, true, false) ((pred) ? (true) : (false))
/linux-4.1.27/drivers/media/platform/davinci/
H A Disif.c610 (module_params->compress.pred << isif_config_raw()

Completed in 618 milliseconds