mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-20 01:50:24 +08:00
gdb/
Code cleanup - reformatting. * dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ... (producer_is_gcc_ge_4): ... here, change the return value. (process_full_comp_unit): New variable gcc_4_minor, adjust the value interpretation.
This commit is contained in:
@ -1,3 +1,11 @@
|
|||||||
|
2011-06-29 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
Code cleanup - reformatting.
|
||||||
|
* dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ...
|
||||||
|
(producer_is_gcc_ge_4): ... here, change the return value.
|
||||||
|
(process_full_comp_unit): New variable gcc_4_minor, adjust the value
|
||||||
|
interpretation.
|
||||||
|
|
||||||
2011-06-29 Jan Kratochvil <jan.kratochvil@redhat.com>
|
2011-06-29 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
Fix non-only rename list for Fortran modules import.
|
Fix non-only rename list for Fortran modules import.
|
||||||
|
@ -4646,10 +4646,12 @@ compute_delayed_physnames (struct dwarf2_cu *cu)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check for GCC >= 4.0. */
|
/* Check for GCC >= 4.x. Return minor version (x) of 4.x in such case. If it
|
||||||
|
is not GCC or it is GCC older than 4.x return -1. If it is GCC 5.x or
|
||||||
|
higher return INT_MAX. */
|
||||||
|
|
||||||
static int
|
static int
|
||||||
producer_is_gcc_ge_4_0 (struct dwarf2_cu *cu)
|
producer_is_gcc_ge_4 (struct dwarf2_cu *cu)
|
||||||
{
|
{
|
||||||
const char *cs;
|
const char *cs;
|
||||||
int major, minor;
|
int major, minor;
|
||||||
@ -4660,7 +4662,7 @@ producer_is_gcc_ge_4_0 (struct dwarf2_cu *cu)
|
|||||||
this case can also happen for -gdwarf-4 type units supported since
|
this case can also happen for -gdwarf-4 type units supported since
|
||||||
gcc-4.5. */
|
gcc-4.5. */
|
||||||
|
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Skip any identifier after "GNU " - such as "C++" or "Java". */
|
/* Skip any identifier after "GNU " - such as "C++" or "Java". */
|
||||||
@ -4669,7 +4671,7 @@ producer_is_gcc_ge_4_0 (struct dwarf2_cu *cu)
|
|||||||
{
|
{
|
||||||
/* For non-GCC compilers expect their behavior is not compliant. */
|
/* For non-GCC compilers expect their behavior is not compliant. */
|
||||||
|
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
cs = &cu->producer[strlen ("GNU ")];
|
cs = &cu->producer[strlen ("GNU ")];
|
||||||
while (*cs && !isdigit (*cs))
|
while (*cs && !isdigit (*cs))
|
||||||
@ -4678,10 +4680,14 @@ producer_is_gcc_ge_4_0 (struct dwarf2_cu *cu)
|
|||||||
{
|
{
|
||||||
/* Not recognized as GCC. */
|
/* Not recognized as GCC. */
|
||||||
|
|
||||||
return 0;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
return major >= 4;
|
if (major < 4)
|
||||||
|
return -1;
|
||||||
|
if (major > 4)
|
||||||
|
return INT_MAX;
|
||||||
|
return minor;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Generate full symbol information for PST and CU, whose DIEs have
|
/* Generate full symbol information for PST and CU, whose DIEs have
|
||||||
@ -4725,6 +4731,8 @@ process_full_comp_unit (struct dwarf2_per_cu_data *per_cu)
|
|||||||
|
|
||||||
if (symtab != NULL)
|
if (symtab != NULL)
|
||||||
{
|
{
|
||||||
|
int gcc_4_minor = producer_is_gcc_ge_4 (cu);
|
||||||
|
|
||||||
/* Set symtab language to language from DW_AT_language. If the
|
/* Set symtab language to language from DW_AT_language. If the
|
||||||
compilation is from a C file generated by language preprocessors, do
|
compilation is from a C file generated by language preprocessors, do
|
||||||
not set the language if it was already deduced by start_subfile. */
|
not set the language if it was already deduced by start_subfile. */
|
||||||
@ -4741,7 +4749,7 @@ process_full_comp_unit (struct dwarf2_per_cu_data *per_cu)
|
|||||||
Still one can confuse GDB by using non-standard GCC compilation
|
Still one can confuse GDB by using non-standard GCC compilation
|
||||||
options - this waits on GCC PR other/32998 (-frecord-gcc-switches).
|
options - this waits on GCC PR other/32998 (-frecord-gcc-switches).
|
||||||
*/
|
*/
|
||||||
if (cu->has_loclist && producer_is_gcc_ge_4_0 (cu))
|
if (cu->has_loclist && gcc_4_minor >= 0)
|
||||||
symtab->locations_valid = 1;
|
symtab->locations_valid = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user