Put GDB's terminal settings into effect when paginating
[deliverable/binutils-gdb.git] / gdb / symtab.h
index bf1ef74185d248658d47ea5fd6f5c05d2459d8e7..399ae548c07cf9db0ccb477e050056b085f1e3ae 100644 (file)
@@ -114,7 +114,7 @@ struct general_symbol_info
   {
     LONGEST ivalue;
 
-    struct block *block;
+    const struct block *block;
 
     const gdb_byte *bytes;
 
@@ -122,7 +122,7 @@ struct general_symbol_info
 
     /* A common block.  Used with LOC_COMMON_BLOCK.  */
 
-    struct common_block *common_block;
+    const struct common_block *common_block;
 
     /* For opaque typedef struct chain.  */
 
@@ -391,8 +391,17 @@ struct minimal_symbol
 #define MSYMBOL_TYPE(msymbol)          (msymbol)->type
 
 #define MSYMBOL_VALUE(symbol)          (symbol)->mginfo.value.ivalue
-#define MSYMBOL_VALUE_ADDRESS(symbol)  ((symbol)->mginfo.value.address + 0)
-#define SET_MSYMBOL_VALUE_ADDRESS(symbol, new_value) \
+/* The unrelocated address of the minimal symbol.  */
+#define MSYMBOL_VALUE_RAW_ADDRESS(symbol) ((symbol)->mginfo.value.address + 0)
+/* The relocated address of the minimal symbol, using the section
+   offsets from OBJFILE.  */
+#define MSYMBOL_VALUE_ADDRESS(objfile, symbol)                         \
+  ((symbol)->mginfo.value.address                                      \
+   + ANOFFSET ((objfile)->section_offsets, ((symbol)->mginfo.section)))
+/* For a bound minsym, we can easily compute the address directly.  */
+#define BMSYMBOL_VALUE_ADDRESS(symbol) \
+  MSYMBOL_VALUE_ADDRESS ((symbol).objfile, (symbol).minsym)
+#define SET_MSYMBOL_VALUE_ADDRESS(symbol, new_value)   \
   ((symbol)->mginfo.value.address = (new_value))
 #define MSYMBOL_VALUE_BYTES(symbol)    (symbol)->mginfo.value.bytes
 #define MSYMBOL_BLOCK_VALUE(symbol)    (symbol)->mginfo.value.block
@@ -873,7 +882,7 @@ struct symtab
      between different symtabs (and normally is for all the symtabs
      in a given compilation unit).  */
 
-  struct blockvector *blockvector;
+  const struct blockvector *blockvector;
 
   /* Table mapping core addresses to line numbers for this file.
      Can be NULL if none.  Never shared between different symtabs.  */
@@ -1212,6 +1221,9 @@ struct symtab_and_line
 
   /* The probe associated with this symtab_and_line.  */
   struct probe *probe;
+  /* If PROBE is not NULL, then this is the objfile in which the probe
+     originated.  */
+  struct objfile *objfile;
 };
 
 extern void init_sal (struct symtab_and_line *sal);
@@ -1344,8 +1356,8 @@ struct symbol_search
   struct symbol_search *next;
 };
 
-extern void search_symbols (char *, enum search_domain, int, char **,
-                           struct symbol_search **);
+extern void search_symbols (const char *, enum search_domain, int,
+                           const char **, struct symbol_search **);
 extern void free_search_symbols (struct symbol_search *);
 extern struct cleanup *make_cleanup_free_search_symbols (struct symbol_search
                                                         **);
This page took 0.024097 seconds and 4 git commands to generate.