* dwarf2loc.c (dwarf2_compile_expr_to_ax) <DW_OP_fbreg>: Only
authorTom Tromey <tromey@redhat.com>
Tue, 22 Jan 2013 15:57:28 +0000 (15:57 +0000)
committerTom Tromey <tromey@redhat.com>
Tue, 22 Jan 2013 15:57:28 +0000 (15:57 +0000)
require_rvalue for a register location.

gdb/ChangeLog
gdb/dwarf2loc.c

index bc2b587..eb02b37 100644 (file)
@@ -1,3 +1,8 @@
+2013-01-22  Tom Tromey  <tromey@redhat.com>
+
+       * dwarf2loc.c (dwarf2_compile_expr_to_ax) <DW_OP_fbreg>: Only
+       require_rvalue for a register location.
+
 2013-01-21  Marc Khouzam  <marc.khouzam@ericsson.com>
 
        * breakpoint.c (print_one_breakpoint_location): Add MI
index 2282feb..3688425 100644 (file)
@@ -2878,7 +2878,8 @@ dwarf2_compile_expr_to_ax (struct agent_expr *expr, struct axs_value *loc,
            op_ptr = safe_read_sleb128 (op_ptr, op_end, &offset);
            dwarf2_compile_expr_to_ax (expr, loc, arch, addr_size, datastart,
                                       datastart + datalen, per_cu);
-           require_rvalue (expr, loc);
+           if (loc->kind == axs_lvalue_register)
+             require_rvalue (expr, loc);
 
            if (offset != 0)
              {