[rfc] Regcache revamp (vip)

Andrew Cagney ac131313@cygnus.com
Mon Mar 19 11:59:00 GMT 2001


>         o       The external interfaces
>                 register[], register_valid[]
>                 and register_buffer() are
>                 being documented as deprecated.

>         o       Other pseudo-register interfaces
>                 such as STORE_PSEUDO_REG()
>                 are put in the fireing line.

To update this list.  I think the following can be deprecated:

	register[]
	register_valid[]
	register_buffer()
		Replaced by, on the target side
		  supply_register()
		and on core-gdb side:
		  {read,write}_register_gen()

	STORE_PSEUDO_REGISTER
	FETCH_PSEUDO_REGISTER
		Now handed by the methods
		  gdbarch_{read,write}_register()
		which sits between core GDB and
		the register cache.

	REGISTER_CONVERTIBLE
	REGISTER_CONVERT_TO_RAW
	REGISTER_CONVERT_TO_VIRTUAL
		I think these three are redundant.
		gdbarch_register_{read,write} can
		do any conversion it likes.

	REGISTER_VIRTUAL_SIZE
	MAX_REGISTER_VIRTUAL_SIZE
	REGISTER_VIRTUAL_TYPE
		I think these can be replaced by the
		pair:
		  FRAME_REGISTER_TYPE(frame, regnum)
		  REGISTER_TYPE(regnum)

Scary!

If something gets deprecated it won't be immediatly deleted.  Instead it
will most likely get a rename in a desperate attempt to stop people
cloning it :-)

	Andrew



More information about the Gdb-patches mailing list