Implement UNOP_MEMVAL and UNOP_MEMVAL_TYPE
authorTom Tromey <tom@tromey.com>
Mon, 8 Mar 2021 14:27:57 +0000 (07:27 -0700)
committerTom Tromey <tom@tromey.com>
Mon, 8 Mar 2021 14:28:23 +0000 (07:28 -0700)
commitcbc18219d313984150f25af6cc66c866e1686190
tree3d389830898d13f65dc6f509c785e461010286a6
parentae4bb61e199c90c71e3482169233a0f40f446484
Implement UNOP_MEMVAL and UNOP_MEMVAL_TYPE

This adds class unop_memval_operation and unop_memval_type_operation,
which implement UNOP_MEMVAL and UNOP_MEMVAL_TYPE.

gdb/ChangeLog
2021-03-08  Tom Tromey  <tom@tromey.com>

* expop.h (class unop_memval_operation)
(class unop_memval_type_operation): New.
* eval.c (eval_op_memval): No longer static.
(unop_memval_operation::evaluate_for_address)
(unop_memval_type_operation::evaluate_for_address)
(unop_memval_operation::evaluate_for_sizeof)
(unop_memval_type_operation::evaluate_for_sizeof): New methods.
* ax-gdb.c (unop_memval_operation::do_generate_ax)
(unop_memval_type_operation::do_generate_ax): New methods.
gdb/ChangeLog
gdb/ax-gdb.c
gdb/eval.c
gdb/expop.h