2005-02-06 Andrew Cagney <cagney@gnu.org>
authorAndrew Cagney <cagney@redhat.com>
Mon, 7 Feb 2005 04:50:28 +0000 (04:50 +0000)
committerAndrew Cagney <cagney@redhat.com>
Mon, 7 Feb 2005 04:50:28 +0000 (04:50 +0000)
* value.h (VALUE_OPTIMIZED_OUT): Delete.
(value_optimized_out, set_value_optimized_out): Declare.
* value.c (set_value_optimized_out, value_optimized_out): Define.
* valprint.c, findvar.c, dwarf2loc.c: Update.

gdb/ChangeLog
gdb/dwarf2loc.c
gdb/findvar.c
gdb/valprint.c
gdb/value.c
gdb/value.h

index 33ac6bbeae00bdcccfb1ae95106da6b4854e31e2..6c203951dd8d0df7a5d26c6d10026d642aa16449 100644 (file)
@@ -1,5 +1,10 @@
 2005-02-06  Andrew Cagney  <cagney@gnu.org>
 
+       * value.h (VALUE_OPTIMIZED_OUT): Delete.
+       (value_optimized_out, set_value_optimized_out): Declare.
+       * value.c (set_value_optimized_out, value_optimized_out): Define.
+       * valprint.c, findvar.c, dwarf2loc.c: Update.
+
        * value.c (value_contents, value_contents_writeable): New
        functions.
        * value.h (VALUE_CONTENTS): Delete macro.
index 665779197ec8dd919cfb26455b60ea5a94e08258..037adf33078dad39f3f402d4bb6eb6b6b2711a60 100644 (file)
@@ -1,5 +1,7 @@
 /* DWARF 2 location expression support for GDB.
-   Copyright 2003 Free Software Foundation, Inc.
+
+   Copyright 2003, 2005 Free Software Foundation, Inc.
+
    Contributed by Daniel Jacobowitz, MontaVista Software, Inc.
 
    This file is part of GDB.
@@ -214,7 +216,7 @@ dwarf2_evaluate_loc_desc (struct symbol *var, struct frame_info *frame,
     {
       retval = allocate_value (SYMBOL_TYPE (var));
       VALUE_LVAL (retval) = not_lval;
-      VALUE_OPTIMIZED_OUT (retval) = 1;
+      set_value_optimized_out (retval, 1);
     }
 
   baton.frame = frame;
index 94140d6f438eaa494a41671381a8b4b969c0cc16..aff138aa117479c03f7a652fce5c25b9ddd4b5ed 100644 (file)
@@ -287,7 +287,7 @@ value_of_register (int regnum, struct frame_info *frame)
   VALUE_LVAL (reg_val) = lval;
   VALUE_ADDRESS (reg_val) = addr;
   VALUE_REGNUM (reg_val) = regnum;
-  VALUE_OPTIMIZED_OUT (reg_val) = optim;
+  set_value_optimized_out (reg_val, optim);
   VALUE_FRAME_ID (reg_val) = get_frame_id (frame);
   return reg_val;
 }
@@ -576,7 +576,7 @@ addresses have not been bound by the dynamic loader. Try again when executable i
 
     case LOC_OPTIMIZED_OUT:
       VALUE_LVAL (v) = not_lval;
-      VALUE_OPTIMIZED_OUT (v) = 1;
+      set_value_optimized_out (v, 1);
       return v;
 
     default:
@@ -701,7 +701,7 @@ value_from_register (struct type *type, int regnum, struct frame_info *frame)
          VALUE_REGNUM (v) = regnum;
        }
       
-      VALUE_OPTIMIZED_OUT (v) = optimized;
+      set_value_optimized_out (v, optimized);
       
       /* Any structure stored in more than one register will always be
          an integral number of registers.  Otherwise, you need to do
index 9285906dc21bb836d6d8a9214d4c83a39c491f60..dfcd7221a305a5725f3b9ee05e40ccebfc30d9e8 100644 (file)
@@ -164,7 +164,7 @@ value_print (struct value *val, struct ui_file *stream, int format,
       printf_filtered ("<address of value unknown>");
       return 0;
     }
-  if (VALUE_OPTIMIZED_OUT (val))
+  if (value_optimized_out (val))
     {
       printf_filtered ("<value optimized out>");
       return 0;
index fecbbf516ecfb0da5f0e2b095233839b8f3797a9..cf9e137d1d54ea5204c0bae06fbed4fd05573ec0 100644 (file)
@@ -96,7 +96,7 @@ allocate_value (struct type *type)
   val->bitsize = 0;
   VALUE_REGNUM (val) = -1;
   val->lazy = 0;
-  VALUE_OPTIMIZED_OUT (val) = 0;
+  val->optimized_out = 0;
   VALUE_EMBEDDED_OFFSET (val) = 0;
   VALUE_POINTED_TO_OFFSET (val) = 0;
   val->modifiable = 1;
@@ -193,6 +193,17 @@ value_contents_writeable (struct value *value)
   return value->aligner.contents;
 }
 
+int
+value_optimized_out (struct value *value)
+{
+  return value->optimized_out;
+}
+
+void
+set_value_optimized_out (struct value *value, int val)
+{
+  value->optimized_out = val;
+}
 \f
 /* Return a mark in the value chain.  All values allocated after the
    mark is obtained (except for those released) are subject to being freed
@@ -297,7 +308,7 @@ value_copy (struct value *arg)
   VALUE_FRAME_ID (val) = VALUE_FRAME_ID (arg);
   VALUE_REGNUM (val) = VALUE_REGNUM (arg);
   val->lazy = arg->lazy;
-  VALUE_OPTIMIZED_OUT (val) = VALUE_OPTIMIZED_OUT (arg);
+  val->optimized_out = arg->optimized_out;
   VALUE_EMBEDDED_OFFSET (val) = VALUE_EMBEDDED_OFFSET (arg);
   VALUE_POINTED_TO_OFFSET (val) = VALUE_POINTED_TO_OFFSET (arg);
   val->modifiable = arg->modifiable;
index 50ea6d90b42a4e06319ae63be5044715a45e4be2..0a3d6af80bb678e65b939a720d4d1f0b0720e02e 100644 (file)
@@ -213,7 +213,8 @@ extern int value_fetch_lazy (struct value *val);
 #define VALUE_INTERNALVAR(val) (val)->location.internalvar
 #define VALUE_FRAME_ID(val) ((val)->frame_id)
 #define VALUE_REGNUM(val) (val)->regnum
-#define VALUE_OPTIMIZED_OUT(val) ((val)->optimized_out)
+extern int value_optimized_out (struct value *value);
+extern void set_value_optimized_out (struct value *value, int val);
 #define VALUE_EMBEDDED_OFFSET(val) ((val)->embedded_offset)
 #define VALUE_POINTED_TO_OFFSET(val) ((val)->pointed_to_offset)