From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14778 invoked by alias); 16 Jul 2002 20:41:49 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 14723 invoked from network); 16 Jul 2002 20:41:48 -0000 Received: from unknown (HELO localhost.redhat.com) (66.30.197.194) by sources.redhat.com with SMTP; 16 Jul 2002 20:41:48 -0000 Received: by localhost.redhat.com (Postfix, from userid 469) id B6013108CA; Tue, 16 Jul 2002 15:30:11 -0400 (EDT) From: Elena Zannoni MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15668.29763.211338.305420@localhost.redhat.com> Date: Tue, 16 Jul 2002 13:42:00 -0000 To: Andrew Cagney Cc: Elena Zannoni , Daniel Jacobowitz , gdb-patches@sources.redhat.com Subject: Re: [patch/rfc] Obsolete i[3456]86-*-os9k target In-Reply-To: <3D34716D.3080300@ges.redhat.com> References: <3D31B0BB.4030809@ges.redhat.com> <20020714173533.GA30061@nevyn.them.org> <15666.7366.759366.807608@localhost.redhat.com> <3D343BAE.1080300@ges.redhat.com> <15668.28233.984220.611039@localhost.redhat.com> <3D34716D.3080300@ges.redhat.com> X-SW-Source: 2002-07/txt/msg00353.txt.bz2 Andrew Cagney writes: > > > I started changing: > > > > > > if (os8k_stabs) > > > > > > else > > > > > > > > > into: > > > > > > /* OBSOLETE if (os8k_stabs) */ > > > /* OBSOLETE */ > > > /* OBSOLETE else */ > > > > > > > > > but gave up. Some of those if() clauses got pretty weired. Not sure > > > what the reader maintainers want to do. > > > > I'll try to come up a patch that to 'if 0' those bits. I think that > > the indentation and extra curly braces can be fixed later, once we > > pull the code out for good. We definitely need to deactivate these parts, > > otherwise os9k_stabs would be undefined. > > Hmm, another way of disabling it it might be: > > if (os9k_stabs) /* OBSOLETE */ > ... > > The reason behind adding the word OBSOLETE is that it makes searching > easier - just grep out any line with OBSOLETE in it. > > Andrew > Well, how about refining on the following patch, I think it should be pretty easy from this starting point. Elena Index: stabsread.c =================================================================== RCS file: /cvs/uberbaum/gdb/stabsread.c,v retrieving revision 1.35 diff -u -p -r1.35 stabsread.c --- stabsread.c 14 Jun 2002 14:34:25 -0000 1.35 +++ stabsread.c 16 Jul 2002 19:28:53 -0000 @@ -256,6 +256,7 @@ static struct symbol *current_symbol = N *(pp) = next_symbol_text (objfile); \ } while (0) +#if 0 /* OBSOLETE OS9K */ /* FIXME: These probably should be our own types (like rs6000_builtin_type has its own types) rather than builtin_type_*. */ static struct type **os9k_type_vector[] = @@ -284,6 +285,7 @@ os9k_init_type_vector (struct type **tv) for (i = 0; i < sizeof (os9k_type_vector) / sizeof (struct type **); i++) tv[i] = (os9k_type_vector[i] == 0 ? 0 : *(os9k_type_vector[i])); } +#endif /* OBSOLETE OS9K */ /* Look up a dbx type-number pair. Return the address of the slot where the type for that number-pair is stored. @@ -351,9 +353,11 @@ Invalid symbol data: type number (%d,%d) memset (&type_vector[old_len], 0, (type_vector_length - old_len) * sizeof (struct type *)); +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) /* Deal with OS9000 fundamental types. */ os9k_init_type_vector (type_vector); +#endif /* OBSOLETE OS9K */ } return (&type_vector[index]); } @@ -2052,9 +2056,11 @@ define_symbol (CORE_ADDR valu, char *str } #endif SYMBOL_NAMESPACE (sym) = VAR_NAMESPACE; +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) add_symbol_to_list (sym, &global_symbols); else +#endif /* OBSOLETE OS9K */ add_symbol_to_list (sym, &local_symbols); break; @@ -2589,6 +2595,7 @@ again: break; case 'f': /* Function returning another type */ +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs && **pp == '(') { /* Function prototype; parse it. @@ -2604,6 +2611,8 @@ again: ++ * pp; } } +#endif /* OBSOLETE OS9K */ + type1 = read_type (pp, objfile); type = make_function_type (type1, dbx_lookup_type (typenums)); break; @@ -2684,22 +2693,36 @@ again: } case 'k': /* Const qualifier on some type (Sun) */ +#if 0 /* OBSOLETE OS9K */ + /* ezannoni 2002-07-16: This can be safely deleted, because 'c' + means complex type in AIX stabs, while it means const qualifier + in os9k stabs. Obviously we were supporting only the os9k meaning. + We were erroring out if we were reading AIX stabs. Right now the + erroring out will happen in the default clause of the switch. */ case 'c': /* Const qualifier on some type (OS9000) */ /* Because 'c' means other things to AIX and 'k' is perfectly good, only accept 'c' in the os9k_stabs case. */ if (type_descriptor == 'c' && !os9k_stabs) return error_type (pp, objfile); +#endif /* OBSOLETE OS9K */ type = read_type (pp, objfile); type = make_cv_type (1, TYPE_VOLATILE (type), type, dbx_lookup_type (typenums)); break; case 'B': /* Volatile qual on some type (Sun) */ +#if 0 /* OBSOLETE OS9K */ + /* ezannoni 2002-07-16: This can be safely deleted, because 'i' + means imported type in AIX stabs, while it means volatile qualifier + in os9k stabs. Obviously we were supporting only the os9k meaning. + We were erroring out if we were reading AIX stabs. Right now the + erroring out will happen in the default clause of the switch. */ case 'i': /* Volatile qual on some type (OS9000) */ /* Because 'i' means other things to AIX and 'B' is perfectly good, only accept 'i' in the os9k_stabs case. */ if (type_descriptor == 'i' && !os9k_stabs) return error_type (pp, objfile); +#endif /* OBSOLETE OS9K */ type = read_type (pp, objfile); type = make_cv_type (TYPE_CONST (type), 1, type, dbx_lookup_type (typenums)); @@ -2804,10 +2827,12 @@ again: break; case 'b': +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) /* Const and volatile qualified type. */ type = read_type (pp, objfile); else +#endif /* OBSOLETE OS9K */ { /* Sun ACC builtin int type */ type = read_sun_builtin_type (pp, typenums, objfile); @@ -3666,8 +3691,10 @@ read_struct_fields (struct field_info *f while (**pp != ';' && **pp != '\0') { +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs && **pp == ',') break; +#endif /* OBSOLETE OS9K */ STABS_CONTINUE (pp, objfile); /* Get space to record the next field's data. */ new = (struct nextfield *) xmalloc (sizeof (struct nextfield)); @@ -4329,9 +4356,11 @@ read_array_type (register char **pp, reg Fortran adjustable arrays use Adigits or Tdigits for lower or upper; for these, produce a type like float[][]. */ +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) index_type = builtin_type_int; else +#endif /* OBSOLETE OS9K */ { index_type = read_type (pp, objfile); if (**pp != ';') @@ -4345,7 +4374,12 @@ read_array_type (register char **pp, reg (*pp)++; adjustable = 1; } +#if 0 /* OBSOLETE OS9K */ lower = read_huge_number (pp, os9k_stabs ? ',' : ';', &nbits); +#else /* OBSOLETE OS9K */ + lower = read_huge_number (pp, ';', &nbits); +#endif /* OBSOLETE OS9K */ + if (nbits != 0) return error_type (pp, objfile); @@ -4405,6 +4439,7 @@ read_enum_type (register char **pp, regi osyms = *symlist; o_nsyms = osyms ? osyms->nsyms : 0; +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) { /* Size. Perhaps this does not have to be conditionalized on @@ -4414,6 +4449,7 @@ read_enum_type (register char **pp, regi if (nbits != 0) return error_type (pp, objfile); } +#endif /* OBSOLETE OS9K */ /* The aix4 compiler emits an extra field before the enum members; my guess is it's a type of some sort. Just ignore it. */ @@ -4652,9 +4688,11 @@ read_huge_number (char **pp, int end, in p++; } +#if 0 /* OBSOLETE OS9K */ if (os9k_stabs) upper_limit = ULONG_MAX / radix; else +#endif /* OBSOLETE OS9K */ upper_limit = LONG_MAX / radix; while ((c = *p++) >= '0' && c < ('0' + radix)) @@ -5366,7 +5404,9 @@ start_stabs (void) /* FIXME: If common_block_name is not already NULL, we should complain(). */ common_block_name = NULL; +#if 0 /* OBSOLETE OS9K */ os9k_stabs = 0; +#endif /* OBSOLETE OS9K */ } /* Call after end_symtab() */