diff options
author | Jiri Olsa <jolsa@kernel.org> | 2020-02-28 10:36:12 +0100 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2020-03-10 01:43:24 +0100 |
commit | 576a65b6974ddc830a89b6feb6823bd6b5914bde (patch) | |
tree | db78e3ca6ff527dee3cc1bfd7c751d2fadc49fb1 /tools/perf/util/expr.c | |
parent | perf header: Add check for unexpected use of reserved membrs in event attr (diff) | |
download | linux-576a65b6974ddc830a89b6feb6823bd6b5914bde.tar.xz linux-576a65b6974ddc830a89b6feb6823bd6b5914bde.zip |
perf expr: Add expr.c object
Add generic expr code into new expr.c object.
The expr.c object will be mainly used in following change that will get
rid of the manual flex code,
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: John Garry <john.garry@huawei.com>
Cc: Kajol Jain <kjain@linux.ibm.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Link: http://lore.kernel.org/lkml/20200228093616.67125-2-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/expr.c')
-rw-r--r-- | tools/perf/util/expr.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/perf/util/expr.c b/tools/perf/util/expr.c new file mode 100644 index 000000000000..816b23b2068a --- /dev/null +++ b/tools/perf/util/expr.c @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: GPL-2.0 +#include <assert.h> +#include "expr.h" + +/* Caller must make sure id is allocated */ +void expr__add_id(struct parse_ctx *ctx, const char *name, double val) +{ + int idx; + + assert(ctx->num_ids < MAX_PARSE_ID); + idx = ctx->num_ids++; + ctx->ids[idx].name = name; + ctx->ids[idx].val = val; +} + +void expr__ctx_init(struct parse_ctx *ctx) +{ + ctx->num_ids = 0; +} |