* cris.h (R_CRIS_32_IE): New relocation.
[deliverable/binutils-gdb.git] / gdb / value.h
index f53d333bb73ad0ed8a2b43f670aece2ca6bf4f4e..a882004e5ce5fff8ac1fd98ada2d164e741c8f85 100644 (file)
@@ -32,6 +32,7 @@ struct symbol;
 struct type;
 struct ui_file;
 struct language_defn;
+struct value_print_options;
 
 /* The structure which defines the type of a value.  It should never
    be possible for a program lval value to survive over a call to the
@@ -288,6 +289,10 @@ extern struct value *value_from_string (char *string);
 extern struct value *value_at (struct type *type, CORE_ADDR addr);
 extern struct value *value_at_lazy (struct type *type, CORE_ADDR addr);
 
+extern struct value *value_from_contents_and_address (struct type *,
+                                                     const gdb_byte *,
+                                                     CORE_ADDR);
+
 extern struct value *default_value_from_register (struct type *type,
                                                  int regnum,
                                                  struct frame_info *frame);
@@ -313,6 +318,8 @@ extern struct value *locate_var_value (struct symbol *var,
                                       struct frame_info *frame);
 
 extern struct value *allocate_value (struct type *type);
+extern struct value *allocate_value_lazy (struct type *type);
+extern void allocate_value_contents (struct value *value);
 
 extern struct value *allocate_repeat_value (struct type *type, int count);
 
@@ -499,7 +506,7 @@ extern int unop_user_defined_p (enum exp_opcode op, struct value *arg1);
 
 extern int destructor_name_p (const char *name, const struct type *type);
 
-#define value_free(val) xfree (val)
+extern void value_free (struct value *val);
 
 extern void free_all_values (void);
 
@@ -526,8 +533,8 @@ extern void print_floating (const gdb_byte *valaddr, struct type *type,
 extern void print_decimal_floating (const gdb_byte *valaddr, struct type *type,
                                    struct ui_file *stream);
 
-extern int value_print (struct value *val, struct ui_file *stream, int format,
-                       enum val_prettyprint pretty);
+extern int value_print (struct value *val, struct ui_file *stream,
+                       const struct value_print_options *options);
 
 extern void value_print_array_elements (struct value *val,
                                        struct ui_file *stream, int format,
@@ -537,19 +544,18 @@ extern struct value *value_release_to_mark (struct value *mark);
 
 extern int val_print (struct type *type, const gdb_byte *valaddr,
                      int embedded_offset, CORE_ADDR address,
-                     struct ui_file *stream, int format,
-                     int deref_ref, int recurse,
-                     enum val_prettyprint pretty,
+                     struct ui_file *stream, int recurse,
+                     const struct value_print_options *options,
                      const struct language_defn *language);
 
 extern int common_val_print (struct value *val,
-                            struct ui_file *stream, int format,
-                            int deref_ref, int recurse,
-                            enum val_prettyprint pretty,
+                            struct ui_file *stream, int recurse,
+                            const struct value_print_options *options,
                             const struct language_defn *language);
 
 extern int val_print_string (CORE_ADDR addr, int len, int width,
-                            struct ui_file *stream);
+                            struct ui_file *stream,
+                            const struct value_print_options *options);
 
 extern void print_variable_value (struct symbol *var,
                                  struct frame_info *frame,
This page took 0.023814 seconds and 4 git commands to generate.