| OLD | NEW |
| 1 /* Output dbx-format symbol table information from GNU compiler. | 1 /* Output dbx-format symbol table information from GNU compiler. |
| 2 Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, | 2 Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, |
| 3 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 | 3 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 |
| 4 Free Software Foundation, Inc. | 4 Free Software Foundation, Inc. |
| 5 | 5 |
| 6 This file is part of GCC. | 6 This file is part of GCC. |
| 7 | 7 |
| 8 GCC is free software; you can redistribute it and/or modify it under | 8 GCC is free software; you can redistribute it and/or modify it under |
| 9 the terms of the GNU General Public License as published by the Free | 9 the terms of the GNU General Public License as published by the Free |
| 10 Software Foundation; either version 3, or (at your option) any later | 10 Software Foundation; either version 3, or (at your option) any later |
| 11 version. | 11 version. |
| 12 | 12 |
| 13 GCC is distributed in the hope that it will be useful, but WITHOUT ANY | 13 GCC is distributed in the hope that it will be useful, but WITHOUT ANY |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 | 164 |
| 165 enum typestatus {TYPE_UNSEEN, TYPE_XREF, TYPE_DEFINED}; | 165 enum typestatus {TYPE_UNSEEN, TYPE_XREF, TYPE_DEFINED}; |
| 166 | 166 |
| 167 /* Structure recording information about a C data type. | 167 /* Structure recording information about a C data type. |
| 168 The status element says whether we have yet output | 168 The status element says whether we have yet output |
| 169 the definition of the type. TYPE_XREF says we have | 169 the definition of the type. TYPE_XREF says we have |
| 170 output it as a cross-reference only. | 170 output it as a cross-reference only. |
| 171 The file_number and type_number elements are used if DBX_USE_BINCL | 171 The file_number and type_number elements are used if DBX_USE_BINCL |
| 172 is defined. */ | 172 is defined. */ |
| 173 | 173 |
| 174 struct typeinfo GTY(()) | 174 struct GTY(()) typeinfo { |
| 175 { | |
| 176 enum typestatus status; | 175 enum typestatus status; |
| 177 int file_number; | 176 int file_number; |
| 178 int type_number; | 177 int type_number; |
| 179 }; | 178 }; |
| 180 | 179 |
| 181 /* Vector recording information about C data types. | 180 /* Vector recording information about C data types. |
| 182 When we first notice a data type (a tree node), | 181 When we first notice a data type (a tree node), |
| 183 we assign it a number using next_type_number. | 182 we assign it a number using next_type_number. |
| 184 That is its index in this vector. */ | 183 That is its index in this vector. */ |
| 185 | 184 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 210 struct dbx_file | 209 struct dbx_file |
| 211 { | 210 { |
| 212 struct dbx_file *next; | 211 struct dbx_file *next; |
| 213 int file_number; | 212 int file_number; |
| 214 int next_type_number; | 213 int next_type_number; |
| 215 enum binclstatus bincl_status; /* Keep track of lazy bincl. */ | 214 enum binclstatus bincl_status; /* Keep track of lazy bincl. */ |
| 216 const char *pending_bincl_name; /* Name of bincl. */ | 215 const char *pending_bincl_name; /* Name of bincl. */ |
| 217 struct dbx_file *prev; /* Chain to traverse all pending bincls. */ | 216 struct dbx_file *prev; /* Chain to traverse all pending bincls. */ |
| 218 }; | 217 }; |
| 219 | 218 |
| 220 /* This is the top of the stack. | 219 /* This is the top of the stack. |
| 221 | 220 |
| 222 This is not saved for PCH, because restoring a PCH should not change it. | 221 This is not saved for PCH, because restoring a PCH should not change it. |
| 223 next_file_number does have to be saved, because the PCH may use some | 222 next_file_number does have to be saved, because the PCH may use some |
| 224 file numbers; however, just before restoring a PCH, next_file_number | 223 file numbers; however, just before restoring a PCH, next_file_number |
| 225 should always be 0 because we should not have needed any file numbers | 224 should always be 0 because we should not have needed any file numbers |
| 226 yet. */ | 225 yet. */ |
| 227 | 226 |
| 228 #if (defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO)) \ | 227 #if (defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO)) \ |
| 229 && defined (DBX_USE_BINCL) | 228 && defined (DBX_USE_BINCL) |
| 230 static struct dbx_file *current_file; | 229 static struct dbx_file *current_file; |
| 231 #endif | 230 #endif |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 static const char *base_input_file; | 268 static const char *base_input_file; |
| 270 | 269 |
| 271 #ifdef DEBUG_SYMS_TEXT | 270 #ifdef DEBUG_SYMS_TEXT |
| 272 #define FORCE_TEXT switch_to_section (current_function_section ()) | 271 #define FORCE_TEXT switch_to_section (current_function_section ()) |
| 273 #else | 272 #else |
| 274 #define FORCE_TEXT | 273 #define FORCE_TEXT |
| 275 #endif | 274 #endif |
| 276 | 275 |
| 277 #include "gstab.h" | 276 #include "gstab.h" |
| 278 | 277 |
| 279 #define STAB_CODE_TYPE enum __stab_debug_code | |
| 280 | |
| 281 /* 1 if PARM is passed to this function in memory. */ | 278 /* 1 if PARM is passed to this function in memory. */ |
| 282 | 279 |
| 283 #define PARM_PASSED_IN_MEMORY(PARM) \ | 280 #define PARM_PASSED_IN_MEMORY(PARM) \ |
| 284 (MEM_P (DECL_INCOMING_RTL (PARM))) | 281 (MEM_P (DECL_INCOMING_RTL (PARM))) |
| 285 | 282 |
| 286 /* A C expression for the integer offset value of an automatic variable | 283 /* A C expression for the integer offset value of an automatic variable |
| 287 (N_LSYM) having address X (an RTX). */ | 284 (N_LSYM) having address X (an RTX). */ |
| 288 #ifndef DEBUGGER_AUTO_OFFSET | 285 #ifndef DEBUGGER_AUTO_OFFSET |
| 289 #define DEBUGGER_AUTO_OFFSET(X) \ | 286 #define DEBUGGER_AUTO_OFFSET(X) \ |
| 290 (GET_CODE (X) == PLUS ? INTVAL (XEXP (X, 1)) : 0) | 287 (GET_CODE (X) == PLUS ? INTVAL (XEXP (X, 1)) : 0) |
| (...skipping 11 matching lines...) Expand all Loading... |
| 302 static struct obstack stabstr_ob; | 299 static struct obstack stabstr_ob; |
| 303 static size_t stabstr_last_contin_point; | 300 static size_t stabstr_last_contin_point; |
| 304 | 301 |
| 305 #ifdef DBX_USE_BINCL | 302 #ifdef DBX_USE_BINCL |
| 306 static void emit_bincl_stab (const char *c); | 303 static void emit_bincl_stab (const char *c); |
| 307 static void emit_pending_bincls (void); | 304 static void emit_pending_bincls (void); |
| 308 #endif | 305 #endif |
| 309 static inline void emit_pending_bincls_if_required (void); | 306 static inline void emit_pending_bincls_if_required (void); |
| 310 | 307 |
| 311 static void dbxout_init (const char *); | 308 static void dbxout_init (const char *); |
| 312 | 309 |
| 313 static void dbxout_finish (const char *); | 310 static void dbxout_finish (const char *); |
| 314 static void dbxout_start_source_file (unsigned, const char *); | 311 static void dbxout_start_source_file (unsigned, const char *); |
| 315 static void dbxout_end_source_file (unsigned); | 312 static void dbxout_end_source_file (unsigned); |
| 316 static void dbxout_typedefs (tree); | 313 static void dbxout_typedefs (tree); |
| 317 static void dbxout_type_index (tree); | 314 static void dbxout_type_index (tree); |
| 318 static void dbxout_args (tree); | 315 static void dbxout_args (tree); |
| 319 static void dbxout_type_fields (tree); | 316 static void dbxout_type_fields (tree); |
| 320 static void dbxout_type_method_1 (tree); | 317 static void dbxout_type_method_1 (tree); |
| 321 static void dbxout_type_methods (tree); | 318 static void dbxout_type_methods (tree); |
| 322 static void dbxout_range_type (tree); | 319 static void dbxout_range_type (tree, tree, tree); |
| 323 static void dbxout_type (tree, int); | 320 static void dbxout_type (tree, int); |
| 324 static bool print_int_cst_bounds_in_octal_p (tree); | 321 static bool print_int_cst_bounds_in_octal_p (tree, tree, tree); |
| 325 static bool is_fortran (void); | 322 static bool is_fortran (void); |
| 326 static void dbxout_type_name (tree); | 323 static void dbxout_type_name (tree); |
| 327 static void dbxout_class_name_qualifiers (tree); | 324 static void dbxout_class_name_qualifiers (tree); |
| 328 static int dbxout_symbol_location (tree, tree, const char *, rtx); | 325 static int dbxout_symbol_location (tree, tree, const char *, rtx); |
| 329 static void dbxout_symbol_name (tree, const char *, int); | 326 static void dbxout_symbol_name (tree, const char *, int); |
| 330 static void dbxout_common_name (tree, const char *, STAB_CODE_TYPE); | 327 static void dbxout_common_name (tree, const char *, stab_code_type); |
| 331 static const char *dbxout_common_check (tree, int *); | 328 static const char *dbxout_common_check (tree, int *); |
| 332 static void dbxout_global_decl (tree); | 329 static void dbxout_global_decl (tree); |
| 333 static void dbxout_type_decl (tree, int); | 330 static void dbxout_type_decl (tree, int); |
| 334 static void dbxout_handle_pch (unsigned); | 331 static void dbxout_handle_pch (unsigned); |
| 335 | 332 |
error: old chunk mismatch |
None
| OLD | NEW |