This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA] Harvard extensions for cast expressions
- From: Michael Snyder <msnyder at cygnus dot com>
- To: Andrew Cagney <ac131313 at cygnus dot com>
- Cc: gdb-patches at sources dot redhat dot com, cagney at redhat dot com, jimb at redhat dot com
- Date: Wed, 14 Nov 2001 18:15:33 -0800
- Subject: Re: [RFA] Harvard extensions for cast expressions
- Organization: Red Hat
- References: <200111142100.fAEL0Kn12623@reddwarf.cygnus.com> <3BF30D0A.3000102@cygnus.com>
Andrew Cagney wrote:
>
> > This is a re-submission, with suggested clean-ups, of an extension
> > posted in September to allow cast expressions to include a modifier
> > which designates an address space (for now, either "code" or "data").
> >
> > Future work may be expected to extend this so that address spaces
> > can be added dynamically at runtime.
> >
> > 2001-09-28 Michael Snyder <msnyder@redhat.com>
> > Add address space identifiers to expression language for types.
> > * c-exp.y (space_identifier, cv_with_space_id,
> > const_or_volatile_or_space_identifier_noopt,
> > const_or_volatile_or_space_identifier): New terminals.
> > (ptype): Accept const_or_volatile_or_space_identifier.
> > (typebase): Accept const_or_volatile_or_space_identifier.
> > * c-typeprint.c (c_type_print_cv_qualifier): Rename to
> > c_type_print_modifier. Handle address space modified types.
> > * gdbtypes.h (TYPE_FLAG_CODE_SPACE, TYPE_FLAG_DATA_SPACE):
> > New type flags.
> > (struct type): Add new field as_type for addr-space qualified types.
> > (TYPE_AS_TYPE): New macro, retrieves the chain of types that are
> > identical to this one except for address-space qualification.
> > * gdbtypes.c (alloc_type): Initialize new field 'as_type'.
> > (address_space_name_to_int): New function.
> > (address_space_int_to_name): New function.
> > (make_type_with_address_space): New function.
> > (make_cv_type): Handle as_type field of new struct type object.
> > * parse.c (check_type_stack_depth): New function.
> > (push_type_address_space): New function.
> > (follow_types): Handle types with address-space qualifier.
> > * parser-defs.h (enum type_pieces): Add enum tp_space_identifier.
> >
> >
> Yes, ok.
> Andrew
Committed.