aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/ax-gdb.c10
2 files changed, 15 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index fb50761..86b3793 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2010-03-12 Stan Shebs <stan@codesourcery.com>
+
+ * ax-gdb.c (gen_expr): Add shift expressions.
+ (gen_expr_binop_rest): Ditto.
+
2010-03-12 Sami Wagiaalla <swagiaal@redhat.com>
* buildsym.c (finish_block): Reset using_directives pointer
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index ddbcb6e..4c27346 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -1479,6 +1479,8 @@ gen_expr (struct expression *exp, union exp_element **pc,
case BINOP_MUL:
case BINOP_DIV:
case BINOP_REM:
+ case BINOP_LSH:
+ case BINOP_RSH:
case BINOP_SUBSCRIPT:
case BINOP_BITWISE_AND:
case BINOP_BITWISE_IOR:
@@ -1884,6 +1886,14 @@ gen_expr_binop_rest (struct expression *exp,
gen_binop (ax, value, value1, value2,
aop_rem_signed, aop_rem_unsigned, 1, "remainder");
break;
+ case BINOP_LSH:
+ gen_binop (ax, value, value1, value2,
+ aop_lsh, aop_lsh, 1, "left shift");
+ break;
+ case BINOP_RSH:
+ gen_binop (ax, value, value1, value2,
+ aop_rsh_signed, aop_rsh_unsigned, 1, "right shift");
+ break;
case BINOP_SUBSCRIPT:
{
struct type *type;