mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 09:08:59 +00:00
Implement some unary operations
This introduces a couple of new template classes and then uses them to implement some simple unary operations. gdb/ChangeLog 2021-03-08 Tom Tromey <tom@tromey.com> * expop.h (unary_ftype): New typedef. (unop_operation, usual_ax_binop_operation): New templates. (unary_plus_operation, unary_neg_operation) (unary_complement_operation, unary_logical_not_operation): New typedefs. * eval.c (eval_op_plus, eval_op_neg, eval_op_complement) (eval_op_lognot): No longer static. * ax-gdb.c (gen_expr_unop): New function.
This commit is contained in:
@@ -1754,7 +1754,7 @@ eval_op_repeat (struct type *expect_type, struct expression *exp,
|
||||
|
||||
/* A helper function for UNOP_PLUS. */
|
||||
|
||||
static struct value *
|
||||
struct value *
|
||||
eval_op_plus (struct type *expect_type, struct expression *exp,
|
||||
enum noside noside, enum exp_opcode op,
|
||||
struct value *arg1)
|
||||
@@ -1772,7 +1772,7 @@ eval_op_plus (struct type *expect_type, struct expression *exp,
|
||||
|
||||
/* A helper function for UNOP_NEG. */
|
||||
|
||||
static struct value *
|
||||
struct value *
|
||||
eval_op_neg (struct type *expect_type, struct expression *exp,
|
||||
enum noside noside, enum exp_opcode op,
|
||||
struct value *arg1)
|
||||
@@ -1790,7 +1790,7 @@ eval_op_neg (struct type *expect_type, struct expression *exp,
|
||||
|
||||
/* A helper function for UNOP_COMPLEMENT. */
|
||||
|
||||
static struct value *
|
||||
struct value *
|
||||
eval_op_complement (struct type *expect_type, struct expression *exp,
|
||||
enum noside noside, enum exp_opcode op,
|
||||
struct value *arg1)
|
||||
@@ -1808,7 +1808,7 @@ eval_op_complement (struct type *expect_type, struct expression *exp,
|
||||
|
||||
/* A helper function for UNOP_LOGICAL_NOT. */
|
||||
|
||||
static struct value *
|
||||
struct value *
|
||||
eval_op_lognot (struct type *expect_type, struct expression *exp,
|
||||
enum noside noside, enum exp_opcode op,
|
||||
struct value *arg1)
|
||||
|
||||
Reference in New Issue
Block a user