aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVaibhav Nagarnaik <vnagarnaik@google.com>2011-07-15 23:00:41 -0400
committerSteven Rostedt <rostedt@goodmis.org>2011-07-29 12:43:19 -0400
commitcc31fde359acd4f9be790b30a264493fec38a274 (patch)
treee53a3a6d7a838126eefecfebc990d2d9f06a02f8
parentb33c8d01da95d1abdfb966eb7f91f2f0a58d8329 (diff)
parse-events: Support '+' opcode in print format
The '+' opcode is not supported in the arguments for the print format. This patch adds support for it. Cc: Michael Rubin <mrubin@google.com> Cc: David Sharp <dhsharp@google.com> Signed-off-by: Vaibhav Nagarnaik <vnagarnaik@google.com> Link: http://lkml.kernel.org/r/1310785241-3799-4-git-send-email-vnagarnaik@google.com Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--parse-events.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/parse-events.c b/parse-events.c
index 58ffe51..32c13ac 100644
--- a/parse-events.c
+++ b/parse-events.c
@@ -2030,6 +2030,18 @@ static int arg_num_eval(struct print_arg *arg, long long *val)
2030 break; 2030 break;
2031 *val = left - right; 2031 *val = left - right;
2032 break; 2032 break;
2033 case '+':
2034 if (arg->op.left->type == PRINT_NULL)
2035 left = 0;
2036 else
2037 ret = arg_num_eval(arg->op.left, &left);
2038 if (!ret)
2039 break;
2040 ret = arg_num_eval(arg->op.right, &right);
2041 if (!ret)
2042 break;
2043 *val = left + right;
2044 break;
2033 default: 2045 default:
2034 do_warning("unknown op '%s'", arg->op.op); 2046 do_warning("unknown op '%s'", arg->op.op);
2035 ret = 0; 2047 ret = 0;