gdb/
[deliverable/binutils-gdb.git] / gdb / ax-gdb.h
index c34959cc310b7e54ebe9f98aa753ba98c8a4c60a..a2367a67e3941ee9f7fd9dd658f7782b5db20f67 100644 (file)
@@ -1,5 +1,6 @@
 /* GDB-specific functions for operating on agent expressions
-   Copyright (C) 1998, 1999, 2000, 2007 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2000, 2007, 2008, 2009, 2010, 2011
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -77,9 +78,13 @@ struct axs_value
 
     /* The type of the subexpression.  Even if lvalue == axs_lvalue_memory,
        this is the type of the value itself; the value on the stack is a
-       "pointer to" an object of this type. */
+       "pointer to" an object of this type.  */
     struct type *type;
 
+    /* If nonzero, this is a variable which does not actually exist in
+       the program.  */
+    char optimized_out;
+
     union
       {
        /* if kind == axs_lvalue_register, this is the register number */
@@ -91,11 +96,6 @@ struct axs_value
 
 /* Translating GDB expressions into agent expressions.  */
 
-/* Given a GDB expression EXPR denoting an lvalue in memory, produce a
-   string of agent bytecode which will leave its address and size on
-   the top of stack.  Return the agent expression.  */
-extern struct agent_expr *expr_to_address_and_size (struct expression *EXPR);
-
 /* Given a GDB expression EXPR, return bytecode to trace its value.
    The result will use the `trace' and `trace_quick' bytecodes to
    record the value of all memory touched by the expression, and leave
@@ -103,4 +103,11 @@ extern struct agent_expr *expr_to_address_and_size (struct expression *EXPR);
    function to discover which registers the expression uses.  */
 extern struct agent_expr *gen_trace_for_expr (CORE_ADDR, struct expression *);
 
+extern struct agent_expr *gen_trace_for_var (CORE_ADDR, struct gdbarch *,
+                                            struct symbol *);
+
+extern struct agent_expr *gen_eval_for_expr (CORE_ADDR, struct expression *);
+
+extern int trace_kludge;
+
 #endif /* AX_GDB_H */
This page took 0.035426 seconds and 4 git commands to generate.