This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- To: Richard dot Earnshaw at arm dot com
- Subject: Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- From: Alexandre Oliva <aoliva at redhat dot com>
- Date: 18 Apr 2001 15:54:43 -0300
- Cc: Joern Rennecke <amylaar at redhat dot com>, wilson at cygnus dot com (Jim Wilson), gcc at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org, gdb at sources dot redhat dot com
- Organization: GCC Team, Red Hat
- References: <200104181247.NAA23421@cam-mail2.cambridge.arm.com>
On Apr 18, 2001, Richard Earnshaw <rearnsha@arm.com> wrote:
> aoliva@redhat.com said:
>> I don't want to extract a bit. I want to extract the remaining bits.
>> The delta was shifted left (or multiplied by 2) to make room for the
>> vbit; now I want the delta back. It's a signed offset.
> This is OK, provided that you can guarantee that the left shift won't
> cause the "sign" bit to change value.
Since the delta is as wide as a pointer, in order for a left-shift to
modify its sign bit we'd need a single C++ object that takes more than
half the address space of a machine. Actually, we need a C++ object
so complicated that one of its bases ends up with such a large offset.
I believe we can assume no such objects are never going to be defined.
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist *Please* write to mailing lists, not to me