This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- To: aoliva at redhat dot com
- Subject: Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- From: Jim Wilson <wilson at cygnus dot com>
- Date: Fri, 6 Apr 2001 13:05:04 -0700
- Cc: gcc at gcc dot gnu dot org
In article <ork84ys5bq.fsf@guarana.lsd.ic.unicamp.br> you write:
>The C++ ABI v3 uses the least significant bit of the pfn to tell
>non-virtual from virtual functions.
There are also targets that use the low-order bit of the PC to determine
processor mode. Two prominent examples are arm/thumb and mips/mips16.
If an address has the low bit set, then that means it is using the 16-bit
compressed instruction set instead of the normal 32-bit instruction set.
This is also a problem for word addressable machines. In that case, all
bits of the address are significant, and there aren't any unused lower-bits
that can be used by the C++ front end. There are several gcc ports to DSPs
that would have this problem.
Jim